最美情侣中文字幕电影,在线麻豆精品传媒,在线网站高清黄,久久黄色视频

歡迎光臨散文網(wǎng) 會(huì)員登陸 & 注冊(cè)

小說(shuō)下載

2023-06-05 23:59 作者:Y氹氹轉(zhuǎn)o菊花園Y  | 我要投稿

簡(jiǎn)介:

此次爬取的是一個(gè)小說(shuō)在線閱讀站點(diǎn)?;趆ttps協(xié)議,無(wú)需登錄。小說(shuō)內(nèi)容就在靜態(tài)頁(yè)面里,直接將網(wǎng)頁(yè)內(nèi)容解析后保存即可。

站點(diǎn):

https://www.shumanwu.net

爬取目標(biāo):

給定一個(gè)小說(shuō)的章節(jié)標(biāo)題頁(yè)作為起始入口,下載所有章節(jié),每一章分別存在單獨(dú)的文件里。支持中途停止再繼續(xù),已載好的章節(jié)不需要重新爬取。

分析網(wǎng)頁(yè)結(jié)構(gòu):

  • 章節(jié)目錄頁(yè)

章節(jié)目錄

如以上樣例截圖,頁(yè)面里,需要提取出小說(shuō)名稱,章節(jié)標(biāo)題,以及章節(jié)的跳轉(zhuǎn)鏈接。

打開開發(fā)者模式,點(diǎn)選標(biāo)題元素,嘗試從有語(yǔ)義的標(biāo)簽名或類名入手,發(fā)現(xiàn)按此css selector可唯一定位標(biāo)題:

定位小說(shuō)名字

再定位每一個(gè)章節(jié)標(biāo)題標(biāo)簽,尋找共通的表達(dá)式:

定位章節(jié)標(biāo)題
  • 單章正文頁(yè)

以同樣的方式,尋找到章節(jié)頁(yè)面正文所處于的標(biāo)簽,試出唯一定位該標(biāo)簽的css selector表達(dá)式。由于正文是一次性加載,不需要翻頁(yè)等操作,直接提取該標(biāo)簽下的文字即可。

定位章節(jié)正文

代碼設(shè)計(jì):

爬取腳本為單文件,各個(gè)級(jí)別的信息收集,封裝在不同的函數(shù)里,層層組合調(diào)用,代碼結(jié)構(gòu)如下:

使用到的庫(kù)包括:

網(wǎng)絡(luò)請(qǐng)求使用requests,頁(yè)面內(nèi)容提取使用pyquery。

每個(gè)小說(shuō)以名字為下載根目錄,以章節(jié)標(biāo)題為保存正文內(nèi)容的文件名,后綴使用.txt。此處有編碼格式需要特別處理,python3默認(rèn)使用utf-8作為編解碼格式。但是此站點(diǎn)使用gbk作為字符集,所以解析請(qǐng)求響應(yīng)內(nèi)容時(shí),需要設(shè)置response.encoding = ‘gbk’。只有設(shè)置了之后,讀取出來(lái)的response.text才不會(huì)亂碼。

為了節(jié)省時(shí)間,已下載的文件不重復(fù)下載。實(shí)現(xiàn)方式為判斷對(duì)應(yīng)章節(jié)的文件名字是否存在,存在則跳過(guò)。循環(huán)遍歷每一章節(jié)的標(biāo)題及鏈接,下載不存在的章節(jié)。所以某 一章節(jié)可以人工刪掉,以此觸發(fā)重新下載。為了不在短時(shí)間內(nèi)發(fā)起過(guò)多的網(wǎng)絡(luò)請(qǐng)求,可以在每章下載完成后隨機(jī)休眠幾秒鐘。多線程技術(shù)上可以實(shí)現(xiàn),但容易被封IP,也有機(jī)會(huì)影響網(wǎng)站的正常運(yùn)營(yíng)。

而目錄頁(yè)面則每次重新請(qǐng)求,因?yàn)檫B載中的小說(shuō)會(huì)不定期更新目錄。

小說(shuō)下載的評(píng)論 (共 條)

分享到微博請(qǐng)遵守國(guó)家法律
满城县| 英吉沙县| 苍山县| 祥云县| 丰都县| 五寨县| 南木林县| 石家庄市| 长乐市| 阳曲县| 白河县| 申扎县| 简阳市| 壤塘县| 垦利县| 商都县| 砀山县| 兰西县| 哈密市| 娄底市| 青海省| 镇雄县| 象山县| 澄迈县| 乡城县| 孙吴县| 达尔| 句容市| 昌图县| 武川县| 吉安市| 福海县| 三穗县| 凤山市| 东光县| 吴忠市| 邹城市| 霞浦县| 丰都县| 肥西县| 巴彦淖尔市|