爬取fushuwang小說txt

2021-10-08 16:43:44 字數 3857 閱讀 6128

import re

import requests

from bs4 import beautifulsoup #網頁解析 獲取資料

5# 增加重連次數

s=requests.session(

) s.keep_alive =

false

# 關閉多餘連線

#第一頁url不太對所以單獨爬取

url=

''.format

(i) html=askurl(url)

bs = beautifulsoup(html.text,

"html.parser"

) data=

for item in bs.find_all(

'div'):

findlink = re.

compile

(r'(.*?)')

link = re.findall(findlink,

str(item))if

len(link)!=0

: link = link[0]

.replace(

"\u3000",""

)# 去掉簡介中標點符號

link =

"".join(link.split())

#print(link)

else

:continue

#print(txt)

return txt

defwrite_data

(data)

: txt =

str(data)

.replace(

'[','')

.replace(

']','')

.replace(

"'","")

# data是前面執行出的資料,先將其轉為字串才能寫入

with

open

('存放結果.txt'

,'a'

, encoding=

'utf-8'

)as file_handle:

# .txt可以不自己新建,**會自動新建

file_handle.write(txt)

# 寫入

file_handle.close(

)def

change()

:#將『第幾章』的位置換行

keyword = re.

compile

(r'第[1-9]\d*章'

)str

='\r\n'

with

open

('存放結果.txt'

,'r'

, encoding=

'utf-8')as

file

: content =

file

.read(

) posts = re.finditer(keyword, content)

for post in posts:

#print(post.group())

if post.start()!=

-1: content = content[

:post.start()]

+str

+post.group()+

str+content[post.end():

]file

=open

(r'上.txt'

,'w'

)file

.write(content)

file

.close(

)if __name__==

'__main__'

: main(

)

參考:

1、askurl中增加重連次數以及關閉連線

python 關於max retries exceeded with url 的錯誤

2、change中在『第幾章』的位置換行

在檔案指定位置插入字串

在a檔案的keyword之後插入字串str

file

=open

(『a』,

'r')

content =

file

.read(

) post = content.find(keyword)

if post !=-1

: content = content[

:post+

len(keyword)]+

str+content[post+

len(keyword):]

file

=open

(『a』,

'w')

file

.write(content)

file

.close(

)

這其中的content[:post]讀取的是keyword之前的內容,content[post:]讀取的是包括keyword在內的之後的內容。所以要在keyword之後插入str需是用content[:post+len(keyword)]與content[post+len(keyword):]

requests爬取小說

1.url解析 2.傳送請求 3.接收返回 4.進行解析 5.儲存 將國風中文網制定頁的 的題目 作者 最近更新章節和時間抓取下來儲存到本地 小夥伴們,今天我們用的利劍是requests xpath 第一步 匯入模組 import requests from lxml import etree im...

Python爬取小說

感覺這個夠蛋疼的,因為你如果正常寫的話,前幾次執行沒問題,之後你連 都沒改,再執行就出錯了。其實這可能是網路請求失敗,或者有反爬蟲的東西吧。但這就會讓你寫的時候非常苦惱,所以這這東西,健壯性及其重要!import requests from bs4 import beautifulsoup impo...

nodejs 爬取小說

前段時間看到有個同學用python爬取了 於是打算用nodejs爬取一下 在這裡先總結一下整個過程.僅供學習,請勿商業 類似jquery的乙個庫 const cheerio require cheerio 檔案管理模組 const fs require fs 控制併發數 const async re...