最近看小说总是有一堆不堪入目的广告,于是决定爬下来放阅读器里看吧。
一言不合上代码
from bs4 import BeautifulSoup
import requests
url_header = 'https://www.tianxiabachang.cn'
default_mark = '/0_804/1877579.html'
f = open('csjxs.txt', 'a')
def core_met():
html = requests.get(url_header + default_mark)
soup = BeautifulSoup(html.content, features='html.parser')
bookname = soup.findAll('div', attrs={"class": "bookname"})
f.write("\n===============================新的章节===================================\n")
f.write(bookname[0].contents[1].text + "\n")
f.write("===============================现在开始===================================\n")
content = soup.find('div', id='content')
content = str(content.text)
f.write(content.replace('<br>', '').replace('<br/>', '').replace("\\n", ''))
items = soup.find_all('a')
for i in items:
if i.text == '下一章':
return i.get("href")
if __name__ == '__main__':
while default_mark is not None:
default_mark = core_met()
逻辑非常简单,主要就是去掉文章里的换行符
以及捕获下一章链接然后递归就好。
扔到手机阅读器里,一口气看完吧。