(^_?)☆本喵的放松方式是看小說,而且類型不限,屬于偏好成謎的那一種。所以從爬取完天氣預(yù)報開始,我就開始想著爬取小說,編寫了一個還不算完善的爬取小說程序,期待你們的完善。
小說來源:?
努努書坊:https://www.kanunu8.com/?
山海經(jīng):https://www.kanunu8.com/book3/7766/index.html
解析頁面源代碼:?
在頁面源代碼中我們可以看到?url+1為每章節(jié)的內(nèi)容鏈接
- 小說名字:r' (.+) '
- 章節(jié)目錄:r' (.+) '
-
小說內(nèi)容:r'
(.+)
'
爬取代碼:?
import re
import requests
url="https://www.kanunu8.com/book3/7766/"
txt=requests.get(url).content.decode("gbk")
m1=re.compile(r'
(.+)
')
print(m1.findall(txt)[0].center(23,'='))
m2=re.compile(r'
(.+)
')
raw=m2.findall(txt)
SHJ=[(i[2],url+i[1]) for i in raw] #i[2]為每一章節(jié)標(biāo)題,url+i[1]為每章節(jié)的內(nèi)容鏈接
print("小說目錄已加載完畢!")
m3=re.compile(r'
(.+)
',re.S) #每章節(jié)小說內(nèi)容
m4=re.compile(r"
") #
小說內(nèi)容中的符號
with open("山海經(jīng).txt","a") as f:
for i in SHJ:
print("開始下載--->",i[0])
t1=requests.get(i[1]).content.decode("gbk") #每章節(jié)小說內(nèi)容獲取
nr=m3.findall(t1) #[0]
nrl=m4.sub('',nr[0])
f.write(i[0])
f.write("\n")
f.write(nrl)
f.write("\n\n")
print("下載完畢!")
執(zhí)行結(jié)果:?
?
?
更多文章、技術(shù)交流、商務(wù)合作、聯(lián)系博主
微信掃碼或搜索:z360901061

微信掃一掃加我為好友
QQ號聯(lián)系: 360901061
您的支持是博主寫作最大的動力,如果您喜歡我的文章,感覺我的文章對您有幫助,請用微信掃描下面二維碼支持博主2元、5元、10元、20元等您想捐的金額吧,狠狠點擊下面給點支持吧,站長非常感激您!手機(jī)微信長按不能支付解決辦法:請將微信支付二維碼保存到相冊,切換到微信,然后點擊微信右上角掃一掃功能,選擇支付二維碼完成支付。
【本文對您有幫助就好】元
