Python如何爬取全站小说
发表于:2025-01-31 作者:千家信息网编辑
千家信息网最后更新 2025年01月31日,这篇文章主要讲解了"Python如何爬取全站小说",文中的讲解内容简单清晰,易于学习与理解,下面请大家跟着小编的思路慢慢深入,一起来研究和学习"Python如何爬取全站小说"吧!开发环境:版 本:an
千家信息网最后更新 2025年01月31日Python如何爬取全站小说
这篇文章主要讲解了"Python如何爬取全站小说",文中的讲解内容简单清晰,易于学习与理解,下面请大家跟着小编的思路慢慢深入,一起来研究和学习"Python如何爬取全站小说"吧!
开发环境:
版 本:anaconda5.2.0(python3.6.5)
编辑器:pycharm 社区版
PS:如有需要Python学习资料的小伙伴可以加下方的群去找免费管理员领取
点击加群即可免费获取Python学习资料
可以免费领取源码、项目实战视频、PDF文件等
开始撸代码:
1、导入工具
import requestsimport parsel
2、伪造浏览器的环境
headers = { # "Cookie": "bcolor=; font=; size=; fontcolor=; width=; Hm_lvt_3806e321b1f2fd3d61de33e5c1302fa5=1596800365,1596800898; Hm_lpvt_3806e321b1f2fd3d61de33e5c1302fa5=1596802442", "Host": "www.shuquge.com", "Referer": "http://www.shuquge.com/txt/8659/index.html", "User-Agent": "Mozilla/5.0 (Windows NT 10.0; WOW64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/81.0.4044.92 Safari/537.36",}
3、解析网站,爬取小说
def download_one_chapter(url_chapter, book): """爬取一章小说""" # 从浏览器里面分析出来的 response = requests.get(url_chapter, headers=headers) # response.apparent_encoding # 自适应编码,万能的 正确率是百分之 99% response.encoding = response.apparent_encoding # print(response.text) """提取数据""" """ 工具 bs4 parsel xpath css re """ # 把html转化为提取对象 # 标签重复怎么办 id class 怎么二次进行提取 sel = parsel.Selector(response.text) h2 = sel.css('h2::text') title = h2.get() print(title) content = sel.css('#content ::text').getall() # print(content) # text = "".join(content) # print(text) # w write 写入 """写入数据""" # with open(title + '.txt', mode='w', encoding='utf-8') as f: with open(book + '.txt', mode='w', encoding='utf-8') as f: f.write(title) f.write('\n') for line in content: f.write(line.strip()) f.write('\n')"""爬取一本小说 会有很多章"""# download_one_chapter('http://www.shuquge.com/txt/8659/2324752.html')# download_one_chapter('http://www.shuquge.com/txt/8659/2324753.html')def download_one_book(book_url): response = requests.get(book_url, headers=headers) response.encoding = response.apparent_encoding html = response.text sel = parsel.Selector(html) title = sel.css('h3::text').get() index_s = sel.css('body > div.listmain > dl > dd > a::attr(href)').getall() print(index_s) for index in index_s: print(book_url[:-10] + index) one_chapter_url = book_url[:-10] + index download_one_chapter(one_chapter_url, title)
1. 异常不会 try except
2. 错误重试 报错之后,重新尝试,或者是记录下来,重新请求
下载一本小说需要哪些东西
download_one_book('http://www.shuquge.com/txt/8659/index.html')download_one_book('http://www.shuquge.com/txt/122230/index.html')download_one_book('http://www.shuquge.com/txt/117456/index.html')
根据每一章的地址下载每一章小说根据每一本小说的目录页下载一个本小说
下载整个网站的小说 -> 下载所有类别的小说 -> 下载每一个类别下面的每一页小说
运行代码后的效果:
感谢各位的阅读,以上就是"Python如何爬取全站小说"的内容了,经过本文的学习后,相信大家对Python如何爬取全站小说这一问题有了更深刻的体会,具体使用情况还需要大家实践验证。这里是,小编将为大家推送更多相关知识点的文章,欢迎关注!
小说
学习
全站
一本
代码
内容
学习资料
工具
数据
浏览器
环境
类别
网站
资料
浏览
东西
地址
实战
对象
小伙
数据库的安全要保护哪些东西
数据库安全各自的含义是什么
生产安全数据库录入
数据库的安全性及管理
数据库安全策略包含哪些
海淀数据库安全审计系统
建立农村房屋安全信息数据库
易用的数据库客户端支持安全管理
连接数据库失败ssl安全错误
数据库的锁怎样保障安全
dcs数据库相关内容
软件开发与事件总线
学网络安全的书
用户权限菜单数据库业务设计
autojs 插入本地数据库
c数据库控件
戴尔r620服务器回收
网络安全进社区活动标题
密云区专业软件开发价目表
2016网络安全态势
什么是靶场网络安全
c#访问服务器数据库
我的世界ip自连斗罗大陆服务器
服务器2022新春宣传片
ios 通知服务器
广州海宏网络技术有限公司
河南久凯网络技术有限公司
网络安全深圳试点
网络安全青年文明号申报创建计划
原版服务器怎么tp
mysql数据库合并软件
c数据库控件
华为网络技术大赛客服
数据库工资管理系统用户需求
网络安全基础实训体会
零信任网络安全和华东电脑
互联网科技属不属于文化
国家运动员数据库
暗黑4服务器容量
合川区工商软件开发服务特点