您好,登錄后才能下訂單哦!
本篇文章給大家分享的是有關(guān)python爬取免費(fèi)或付費(fèi)小說(shuō)的示例分析,小編覺(jué)得挺實(shí)用的,因此分享給大家學(xué)習(xí),希望大家閱讀完這篇文章后可以有所收獲,話不多說(shuō),跟著小編一起來(lái)看看吧。
小說(shuō)相信大家都愛(ài)看吧一章接一章具有極大的吸引力 看了還想看,當(dāng)然付費(fèi)小說(shuō)價(jià)格也不便宜 看到一半突然收費(fèi) 猝不及防!在我們程序員這里 收費(fèi)是不存在的 萬(wàn)物皆可爬
什么是網(wǎng)絡(luò)爬蟲
網(wǎng)絡(luò)爬蟲(又被稱為網(wǎng)頁(yè)蜘蛛,網(wǎng)絡(luò)機(jī)器人,在FOAF社區(qū)中間,更經(jīng)常的稱為網(wǎng)頁(yè)追逐者),是一種按照一定的規(guī)則,自動(dòng)地抓取萬(wàn)維網(wǎng)信息的程序或者腳本。另外一些不常使用的名字還有螞蟻、自動(dòng)索引、模擬程序或者蠕蟲。
環(huán)境:Python3.6+Windows
開(kāi)發(fā)工具:你喜歡用哪個(gè)就用哪個(gè),你開(kāi)心就好!
主要思路:
1 獲取主頁(yè)源代碼
2 獲取章節(jié)超鏈接
3 獲取章節(jié)超鏈接源碼
4 獲取小說(shuō)內(nèi)容
5 下載,文件操作
Python代碼了解一下
import urllib.request
import re
# 1 獲取主頁(yè)源代碼
# 2 獲取章節(jié)超鏈接
# 3 獲取章節(jié)超鏈接源碼
# 4 獲取小說(shuō)內(nèi)容
# 5 下載,文件操作
# 駝峰命名法
# 獲取小說(shuō)內(nèi)容
def getNovertContent():
# <http.client.HTTPResponse object at 0x000001DFD017F400>
html = urllib.request.urlopen("http://www.quanshuwang.com/book/0/269").read()
html = html.decode("gbk")
# 不加括號(hào) 不匹配
# 正則表達(dá)式 .*? 匹配所有
reg = r'<li><a href="(.*?)" title=".*?">(.*?)</a></li>'
# 增加效率的
reg = re.compile(reg)
urls = re.findall(reg,html)
# print(urls)
# 列表
# [(http://www.quanshuwang.com/book/0/269/78850.html,第一章 山邊小村),
# (http://www.quanshuwang.com/book/0/269/78854.html,第二章 青牛鎮(zhèn))]
for url in urls:
# 章節(jié)的URL地址
novel_url = url[0]
# 章節(jié)標(biāo)題
novel_title = url[1]
chapt = urllib.request.urlopen(novel_url).read()
chapt_html = chapt.decode("gbk")
# r 表示原生字符串 \ \\d r"\d"
reg = r'</script> (.*?)<script type="text/javascript">'
# S 代表多行匹配
reg = re.compile(reg,re.S)
chapt_content = re.findall(reg,chapt_html)
# print(chapt_content)
# 列表["  二愣子睜大著雙眼,直直望著茅草和爛泥糊成的<br />"]
# 第一個(gè)參數(shù) 要替換的字符串 替換后的字符串
chapt_content = chapt_content[0].replace(" ","")
# print(chapt_content) 字符串 二愣子睜大著雙眼,直直望著茅草和爛泥糊成的<br />
chapt_content = chapt_content.replace("<br />","")
print("正在保存 %s"%novel_title)
# w 讀寫模式 wb
# f = open("{}.txt".format(novel_title),'w')
# f.write(chapt_content)
with open("{}.txt".format(novel_title),'w') as f:
f.write(chapt_content)
# f.close()
getNovertContent()
運(yùn)行結(jié)果:
以上就是python爬取免費(fèi)或付費(fèi)小說(shuō)的示例分析,小編相信有部分知識(shí)點(diǎn)可能是我們?nèi)粘9ぷ鲿?huì)見(jiàn)到或用到的。希望你能通過(guò)這篇文章學(xué)到更多知識(shí)。更多詳情敬請(qǐng)關(guān)注億速云行業(yè)資訊頻道。
免責(zé)聲明:本站發(fā)布的內(nèi)容(圖片、視頻和文字)以原創(chuàng)、轉(zhuǎn)載和分享為主,文章觀點(diǎn)不代表本網(wǎng)站立場(chǎng),如果涉及侵權(quán)請(qǐng)聯(lián)系站長(zhǎng)郵箱:is@yisu.com進(jìn)行舉報(bào),并提供相關(guān)證據(jù),一經(jīng)查實(shí),將立刻刪除涉嫌侵權(quán)內(nèi)容。