初学者-Python 网页爬取小说

2 篇文章 2 订阅
订阅专栏

目录

前言

一、思路

二、具体步骤

1.找到小说网站

2.爬取小说所有章节的网站地址

3.爬取每个章节的内容

三、总结


前言

最近自学了一点python,小说广告太多,研究了一下,爬取还是相对比较简单的。


一、思路

找到想看的小说的网站地址→爬取小说所有章节的网站地址→爬取每章小说的标题和内容→把内容保存到TXT文件

二、具体步骤

1.找到小说网站

百度上有很多小说网站但是有些网站有反爬需要注意。

2.爬取小说所有章节的网站地址

首先用浏览器打开小说网站,按F12

 

我们看到章节链接在href里面,找到它的上一级

鼠标移动到上一级标签,左边章节全部高亮,表示这个标签里包含了所有章节的链接,所以我们只要提去这个标签里的所有href 就可以获得所有的章节的网站地址。

右键这个标签,复制,选择复制完整的xpath如下:

/html/body/div[3]/div[2]/div/div/ul

因为章节网站在href里所以加上//@href:

/html/body/div[3]/div[2]/div/div/ul//@href

然后我们就可以开始写代码了需要用到两个库:

#pip install requests,pip install lxml
import requests
from lxml import etree

开始解析网站 

import requests
from lxml import etree
url = "https://www.777zw.net/42/42670/"
re= requests.get(url)#访问小说网站
re.encoding="utf-8"#改为utf-8格式,不然可能读取到的是乱码
selector=etree.HTML(re.text)#解析网站,变成HTML格式
urs=selector.xpath("/html/body/div[3]/div[2]/div/div/ul//@href")
#利用Xpath,读取HTML里的信息,从而获取所以章节的链接 urs就包含了所以的章节链接地址。

打印一下:

['27769200.html', '27769202.html', '27769204.html', '27769206.html', '27769207.html'。。。。。 '31256765.html', '31256766.html']

爬取到的网站是不全的,我们需要在前面加上https://www.777zw.net/42/42670/ 就是url

for i in urs:
    urls1=url+i
    re1 = requests.get(urls1)#re1章节页面
    re1.encoding = "utf-8"
    selector1 = etree.HTML(re1.text)

这样我们就爬取到了每个章节网站。

3.爬取每个章节的内容

我们先进入第一章小说的网页,发现内容里包含了章节名称我们就不用提取章节名字了,爬取内容就可以使用F12 得到内容的xpath地址

/html/body/div[4]/div/div/div[2]/div[2]

需要得到里面的内容就是

/html/body/div[4]/div/div/div[2]/div[2]//text()

//text()是得到该节点下所有的文本,/text()是得到当前节点的文本

内容=selector1.xpath("/html/body/div[4]/div/div/div[2]/div[2]//text()")

获取到的内容是一个列表形式所以我们还要优化下

    neir = ""
    for x in 内容:
        neir = neir + str(x) + "\n"

这样就在每句话后面加了一个换行符。

    with open("重生后,我娇养了反派镇北王.txt","a",encoding="utf-8") as f:
        f.write(neir)

最后写入txt就可以了

#with open("打开一个txt,没有就创建一个",a是追加写入,utf-8是写入文件格式) as f是该txt文件简称。

完整代码:

import requests
from lxml import etree
url = "https://www.777zw.net/42/42670/"
re= requests.get(url)
re.encoding="utf-8"#re书名页
selector=etree.HTML(re.text)#分析网站,变成HTML格式
urs=selector.xpath("/html/body/div[3]/div[2]/div/div/ul//@href")#获取所以章节的链接
for i in urs:
    urls1=url+i
    re1 = requests.get(urls1)#re1章节页面
    re1.encoding = "utf-8"
    selector1 = etree.HTML(re1.text)
    内容=selector1.xpath("/html/body/div[4]/div/div/div[2]/div[2]//text()")
    neir = ""
    for x in 内容:
        neir = neir + str(x) + "\n"
    with open("重生后,我娇养了反派镇北王.txt","a",encoding="utf-8") as f:
        f.write(neir)

三、总结

代码优化:

#pip install requests,pip install lxml
import requests
from lxml import etree
url = "https://www.777zw.net/42/42670/"
re= requests.get(url)
re.encoding="utf-8"#re书名页
selector=etree.HTML(re.text)#分析网站,变成HTML格式
urs=selector.xpath("/html/body/div[3]/div[2]/div/div/ul//@href")#获取所以章节的链接
shum=selector.xpath("/html/body/div[3]/div[1]/div/div/div[2]/div[1]/h1/text()")[0]#获取书名,因为得到是列表所以要【0】
Y=0
print(f"{shum}开始下载,共{len(urs)}章")
for i in urs:
    urls1=url+i
    re1 = requests.get(urls1)#re1章节页面
    re1.encoding = "utf-8"
    selector1 = etree.HTML(re1.text)
    内容=selector1.xpath("/html/body/div[4]/div/div/div[2]/div[2]//text()")
    neir=""
    for x in 内容:
        neir=neir+str(x)+"\n"
    with open(shum+".txt","a",encoding="utf-8") as f:
        f.write(neir)
    Y = Y + 1
    print(f"第{Y}章下载完成")
    if Y==10:#下载第10章后退出程序
        exit()

目前代码下载速度比较慢慢,后续还可以添加多线程运行2000章只需要1分钟左右就可下载完成。

有一些网站有反爬虫,无法爬取。

欢迎指正和提问。

python爬取小说
sitive的博客
10-20 1112
python获取小说
Python爬取小说
zhangweiguo_717的博客
09-21 7595
Python爬取小说生成txt文档
python爬虫篇(项目案列讲解-爬取小说
m0_65482549的博客
06-24 1474
学习一下思路:1.我们进入需要爬取到的小说界面,右键开发者工具 ,选中元素显示,然后找到需要爬取小说章节模块在代码中的位置。将a标签中的文本内容复制,然后ctrl+u打开源代码 ctrl+f将刚刚的文本内容复制查找是否有这个模块。(比较爽的是,刚好这里有,可以不需要去查看网络请求和script代码了)那么我们现在可以可以来获取源代码了编码格式的查看方式。获取源代码之后,我们现在需要去解析一下这串源代码。
Python爬取小说教程详解
weixin_42340721的博客
08-07 1623
免责声明:1、本项目爬取的网站数据仅用于学习交流目的,不用于任何商业用途。2、我们尊重原网站的版权和知识产权,不会对爬取的数据进行任何形式的篡改、传播或用于非法用途。3、爬取行为严格遵守我国相关法律法规,如有侵犯原网站权益,请及时与我们联系,我们将立即停止爬取行为并删除相关数据。4、本项目不对因使用爬取数据导致的任何损失或损害承担责任。5、请使用者遵守本免责声明,如有违反,后果自负。
Python爬取小说
LM813381916的博客
09-20 4964
Python爬取 小说 《北派盗墓笔记》,内容来自互联网
使用python爬取小说
FengF2017的博客
02-09 1万+
使用python爬虫爬取小说 喜欢看网络小说的朋友们,经常需要从网上下载小说。有些人不想向正版网页交钱,也不想注册其他网站的账号,那么对于某些比较冷门的小说或者是正在更新的小说来说,就很难下载到txt或者其他格式的小说。我就是不想花太多时间找冷门小说的下载资源,因此稍微学习了python爬虫知识。 新建scrapy爬虫项目 scrapy是python爬虫框架。使用以下语句安装scra...
python实战-Python爬虫爬取会计师协会网站的指定文章.zip
08-14
它涵盖了从基础到进阶的丰富内容,无论你是初学者还是有一定经验的开发者,都能在这里找到适合自己的挑战。 这份资源通过一系列精心设计的实战案例,引导你运用Python解决真实世界的问题。你将学会如何抓取网页数据...
Python爬虫入门学习实践——爬取小说
qq_45279235的博客
12-26 9831
Python爬虫入门学习实践——爬取小说 前言 本学期开始接触pythonpython是一种面向对象的、解释型的、通用的、开源的脚本编程语言,我觉得python最大的优点就是简单易用,学习起来比较上手,对代码格式的要求没有那么严格,这种风格使得我在编写代码时比较舒适。爬虫作为python的最为吸引我兴趣的一个方面,在学习之后可以帮助我们方便地获取更多的数据源,从而进行更深层次更有效的数据分析,获得更多的价值。 爬取小说思路 首先我们肯定是对小说网站进行观察,辨别小说网站是静态还是动态的,此次爬取的目标是笔
精选_python爬虫--爬取网站中的多个网页_源码打包
03-12
本资源“精选_python爬虫--爬取网站中的多个网页_源码打包”提供了爬取网站多个网页的源码,帮助初学者或开发者更好地理解和实现网页爬取。 在Python中,最常用的爬虫库是BeautifulSoup和Scrapy。BeautifulSoup库...
python实战-Python爬取博客的所有文章并存为带目录的word文档.zip
最新发布
08-14
它涵盖了从基础到进阶的丰富内容,无论你是初学者还是有一定经验的开发者,都能在这里找到适合自己的挑战。 这份资源通过一系列精心设计的实战案例,引导你运用Python解决真实世界的问题。你将学会如何抓取网页数据...
Python+Selenium爬取小说 ---- 新手入门必看
weixin_65469184的博客
10-01 786
Python+Selenium爬取小说
利用python爬取小说
DonLex 的博客
08-20 964
很久没有写过爬虫了,今天刚好有同学问我能不能帮忙把一部小说爬下来,因为网上搜索下载小说,大部分都是一些虚假的链接,或需要注册网站的账号;并且直接在网站上看的话,广告也是满天飞。为了让他更加纯粹的享受小说,也为了炫耀一下Python大法。于是就诞生了这篇文章 步骤 观察网站结构 获取章节链接 获取详细文本 网站分析 在网上搜了一个看小说的网站:笔趣阁。搜索小说之后看到这样的网页: ...
python爬取一本网络小说
Binary_huang的简介
06-14 1083
python爬取一本网络小说
使用python爬取小说(附python源码)
陌雨’的博客
02-23 7480
笔记
使用Python爬取小说
洋洋的博客
03-05 1万+
爬取网站:http://www.biqugecom.com/ 爬取方式:整站爬取,就是把该站所有的小说都爬下来。 本次爬取涉及到的知识点有: Xpath 类的定义及使用 requests库的使用 准备工作 安装requests库: pip3 install requests 安装lxml库: pip3 install lxml 分析网站: 得到每个分类的页面的链接只有...
Python爬取网站小说
qq_42831302的博客
07-21 592
本文写于2023年7月21日,目前运行有效,如网站更改网页元素可能失效。如果文章有哪些错误请多多指教。
python爬虫实战——小说爬取
热门推荐
cuc_pyx技术小站
05-21 3万+
基于requests库和lxml库编写的爬虫,目标小说网站域名http://www.365kk.cc/,类似的小说网站殊途同归,均可采用本文方法爬取
python爬取数据写入txt文件
03-11
你好,这个问题我可以回答。使用Python可以通过requests库获取网页数据,然后使用正则表达式或者BeautifulSoup库解析数据,最后将数据写入txt文件中。具体实现可以参考Python官方文档或者相关教程。
写文章

热门文章

  • 初学者-Python 网页爬取小说 13823
  • HTTP(web)文件分享软件HFS和CHFS(上) 3017
  • 初学者-Python 连连看 927
  • WIN7原版镜像(2011)无法更新系统,提示错误代码80072EFE 686
  • 打开、关闭HTTP,解决80端口占用问题。 208

分类专栏

  • 经验分享 2篇
  • Python 2篇

最新评论

  • 初学者-Python 网页爬取小说

    小顾同学丶: 先print打印看看有没有正确爬取到内容,先不要先写入txt

  • 初学者-Python 网页爬取小说

    2301_77720474: 为什么用这个代码爬晋江,出来的text是空的呀?

  • HTTP(web)文件分享软件HFS和CHFS(上)

    CSDN-Ada助手: 恭喜您写了第三篇博客!标题为“HTTP(web)文件分享软件HFS和CHFS(上)”,我很高兴看到您持续创作并分享有关这些软件的知识。您的文章内容很详细,让我对HFS和CHFS有了更深入的了解。接下来,我期待您能给出更多关于这些软件的实际应用案例,并分享您的使用经验和技巧。谢谢您的分享! CSDN 正在通过评论红包奖励优秀博客,请看红包流:https://bbs.csdn.net/?type=4&header=0&utm_source=csdn_ai_ada_blog_reply3

  • 初学者-Python 网页爬取小说

    之绿541: 你好, 可以写后续的多线程运行吗

  • 初学者-Python 网页爬取小说

    谕辞生: 想问一句,晋江反爬吗表情包

大家在看

  • Win10 安装Node.js 以及 Vue项目的创建 220
  • CentOS中使用Docker运行Nginx并挂载本地目录 6
  • CentOS中使用Docker运行mysql并挂载本地目录 34
  • 【接口自动化测试】jsonpath应用:提取数据、断言、接口关联 225
  • 操作系统知识强化内存映射文件(25王道) 886

最新文章

  • 打开、关闭HTTP,解决80端口占用问题。
  • WIN7原版镜像(2011)无法更新系统,提示错误代码80072EFE
  • HTTP(web)文件分享软件HFS和CHFS(上)
2024年1篇
2023年2篇
2022年2篇

目录

目录

评论 8
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43元 前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包

打赏作者

小顾同学丶

你的鼓励将是我创作的最大动力

¥1 ¥2 ¥4 ¥6 ¥10 ¥20
扫码支付:¥1
获取中
扫码支付

您的余额不足,请更换扫码支付或 充值

打赏作者

实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值

玻璃钢生产厂家玻璃钢雕塑~造型杭州玻璃钢人物雕塑制作厂家玻璃钢雕塑弊端湛江卡通玻璃钢雕塑造型香港商场中庭美陈宿迁玻璃钢卡通雕塑价格青浦玻璃钢雕塑工程安徽欧式玻璃钢雕塑销售电话中国香港玻璃钢雕塑大全铁岭创意玻璃钢花盆厂家揭阳玻璃钢模型雕塑上海商场节庆美陈雕塑山东玻璃钢几何雕塑玻璃钢雕塑的运输乌鲁木齐玻璃钢雕塑类型玻璃钢雕塑一般厚度多少加工玻璃钢雕塑规定美陈卡通图片商场浙江开业商场美陈销售公司玻璃钢孔子像雕塑武汉玻璃钢花盆制作视频江苏秋季商场美陈多少钱绩溪玻璃钢雕塑厂家商场广场美陈道厂家有哪些苏州秋季商场美陈瑞安玻璃钢雕塑玻璃钢动物牛雕塑公司梅州玻璃钢雕塑需要几天太原公园玻璃钢雕塑定做价格南瓜玻璃钢卡通雕塑价格香港通过《维护国家安全条例》两大学生合买彩票中奖一人不认账让美丽中国“从细节出发”19岁小伙救下5人后溺亡 多方发声单亲妈妈陷入热恋 14岁儿子报警汪小菲曝离婚始末遭遇山火的松茸之乡雅江山火三名扑火人员牺牲系谣言何赛飞追着代拍打萧美琴窜访捷克 外交部回应卫健委通报少年有偿捐血浆16次猝死手机成瘾是影响睡眠质量重要因素高校汽车撞人致3死16伤 司机系学生315晚会后胖东来又人满为患了小米汽车超级工厂正式揭幕中国拥有亿元资产的家庭达13.3万户周杰伦一审败诉网易男孩8年未见母亲被告知被遗忘许家印被限制高消费饲养员用铁锨驱打大熊猫被辞退男子被猫抓伤后确诊“猫抓病”特朗普无法缴纳4.54亿美元罚金倪萍分享减重40斤方法联合利华开始重组张家界的山上“长”满了韩国人?张立群任西安交通大学校长杨倩无缘巴黎奥运“重生之我在北大当嫡校长”黑马情侣提车了专访95后高颜值猪保姆考生莫言也上北大硕士复试名单了网友洛杉矶偶遇贾玲专家建议不必谈骨泥色变沉迷短剧的人就像掉进了杀猪盘奥巴马现身唐宁街 黑色着装引猜测七年后宇文玥被薅头发捞上岸事业单位女子向同事水杯投不明物质凯特王妃现身!外出购物视频曝光河南驻马店通报西平中学跳楼事件王树国卸任西安交大校长 师生送别恒大被罚41.75亿到底怎么缴男子被流浪猫绊倒 投喂者赔24万房客欠租失踪 房东直发愁西双版纳热带植物园回应蜉蝣大爆发钱人豪晒法院裁定实锤抄袭外国人感慨凌晨的中国很安全胖东来员工每周单休无小长假白宫:哈马斯三号人物被杀测试车高速逃费 小米:已补缴老人退休金被冒领16年 金额超20万

玻璃钢生产厂家 XML地图 TXT地图 虚拟主机 SEO 网站制作 网站优化