免费视频淫片aa毛片_日韩高清在线亚洲专区vr_日韩大片免费观看视频播放_亚洲欧美国产精品完整版

打開APP
userphoto
未登錄

開通VIP,暢享免費電子書等14項超值服

開通VIP
爬蟲項目--下載小說:筆趣閣--盜墓筆記全文

最近嘗試下載小說,代碼如下:

import requests
import os
from bs4 import BeautifulSoup
import time

# 設(shè)置列表,用以存儲每本書籍的信息
data_dict=[]

#設(shè)置請求頭
hearders={'user-agent':'Mozilla/5.0 (Windows NT 10.0; WOW64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/86.0.4240.198 Safari/537.36'
}

# 設(shè)置頁碼 page_number
page_number=1

# while 循環(huán)的條件設(shè)置為 page_number 的值是否小于10
while page_number<10:
    # 設(shè)置要請求的網(wǎng)頁鏈接
    url='https://www.bbiquge.net/book/88109/index_{}.html'.format(page_number)
    # 請求網(wǎng)頁
    res= requests.get(url,headers=hearders,verify=False)
    #print(res.status_code)
    #暫停6s
    time.sleep(6)
    #解析網(wǎng)站
    bs= BeautifulSoup(res.text,'html.parser')

#尋找父節(jié)點
    bookname_tag=bs.find('dl')
#尋找包含所有信息的子節(jié)點
    bookname_list=bs.find_all('dd')



# 使用 for 循環(huán)遍歷搜索結(jié)果
    for bookname in bookname_list:
        
        # 提取章節(jié)名稱
        title=bookname.text

       
        # 提取書籍鏈接
        book_href=bookname.find('a')['href']

        #print(book_href)
        
		#拼接,形成章節(jié)詳情頁
        url_1='https://www.bbiquge.net/book/88109/'+str(book_href)
        
        
        # 請求章節(jié)詳情頁
        res_1=requests.get(url_1,verify=False)
        
        #暫停6s
        time.sleep(6)

        #print(res_1.status_code)

        # 解析章節(jié)詳情頁

        bs_1=BeautifulSoup(res_1.text,'html.parser')

        #尋找包含所有信息的Tag節(jié)點

        content_tag= bs_1.find('div',id='content').text

        data_dict.append(content_tag)

        with open(title+'.txt', 'w', encoding='utf-8') as f:
            for content in data_dict:
                content = content.replace("\n","")
                #將每一章的內(nèi)容寫入對應(yīng)章節(jié)的txt文件里
                f.write(content)
            print(str(title)+"下載成功!")
        
#頁面自增
page_number += 1

按照請求網(wǎng)址-解析網(wǎng)址-存儲數(shù)據(jù)的步驟,順利取得數(shù)據(jù)。但由于請求過于頻繁,會被服務(wù)器中斷連接。解決辦法為:

(1)在headers中不適用持久連接:

'Connection':'close'

(2)設(shè)置訪問頻率,可以長一點:

time.sleep(10)

(3)隨機(jī)切換User-Agent:

  (4)改變重連次數(shù) requests.adapters.DEFAULT_RETRIES = 5

  (5)關(guān)閉 SSL 驗證   verify=False

response = requests.get(fpath_or_url,headers=headers,stream=True, verify=False)
本站僅提供存儲服務(wù),所有內(nèi)容均由用戶發(fā)布,如發(fā)現(xiàn)有害或侵權(quán)內(nèi)容,請點擊舉報
打開APP,閱讀全文并永久保存 查看更多類似文章
猜你喜歡
類似文章
Python 實現(xiàn)中國天氣小爬蟲
python3 學(xué)習(xí)爬蟲 第一步 網(wǎng)頁基本信息簡單獲取
python3 爬蟲 零基礎(chǔ)快速上手(爬蟲示例)
用 50 行代碼寫個聽小說的爬蟲
從零開始學(xué)爬蟲系列2:下載小說的正確姿勢
【python 爬蟲】python如何以request payload形式發(fā)送post請求
更多類似文章 >>
生活服務(wù)
分享 收藏 導(dǎo)長圖 關(guān)注 下載文章
綁定賬號成功
后續(xù)可登錄賬號暢享VIP特權(quán)!
如果VIP功能使用有故障,
可點擊這里聯(lián)系客服!

聯(lián)系客服