Python爬虫之爬取网络小说并在本地保存为txt文件

您所在的位置:网站首页 魅族怎么把小说下载到文件 Python爬虫之爬取网络小说并在本地保存为txt文件

Python爬虫之爬取网络小说并在本地保存为txt文件

2023-12-24 09:37| 来源: 网络整理| 查看: 265

Python爬虫之爬取网络小说并在本地保存为txt文件

注:本文使用软件为Sublime Text,浏览器为谷歌浏览器 (新手小白第一次写,写得不好请见谅) **1.**首先找到想要爬取的小说章节目录,如下图(网上随便找的一部小说)在这里插入图片描述 然后鼠标右击-点击‘查看网页源代码’,如下图所示: 在这里插入图片描述从上图代码里可以看到小说每一章的链接,所以所以我的思路就是通过这一页面然后让代码获取每一章的链接,再通过链接获取每一章的文字内容。 **2.**关于代码部分讲述

import requests from lxml import etree selector=etree.HTML(html) a=selector.xpath('//@href')

这里需要注意的是我们通过‘//@href’获得的网页链接为‘//www.hongxiu.com/chapter/12115534503935401/32719280238872455’,我们复制这个链接可以直接在浏览器打开并且能搜索到网页的内容,可是在python里直接用这个链接通过.get(url)是获取不到网页内容的,不出意外的话会出错,所以我们需要在‘//@href’获取到的连接前加上‘http:’(这里需要使用到字符串的拼接) 另外,在上述代码里面,我们定义的html,需要这样定义html=""" “”",而引号里面的内容我们需要从第一张图里面复制粘贴含有小说每一章链接的代码,**划重点,一定是含有所有章节的完整代码** 还有一个重点啊啊,感觉我话好多啊,注意注意注意,我们在看完小说的最后一章时,往往在最下面的页面还会有一个‘下一章’,这里的下一章对我们就没有用了,但是爬取章节链接的时候就会爬取到,所以我们需要用if语句来检测,如果爬取的链接为最后一章的链接时,则停止。 3.代码 (下面的代码就是以第一张图片上的小说为例)

import requests from lxml import etree html=""" 第001章:遇见(01) 第002章:遇见(02) 第003章:遇见(03) 第004章:遇见(04) 第006章:遇见(06) 第007章:遇见(07) 第008章:遇见(08) 第010章:遇见(10) 第011章:接触(01) 第013章:接触(03) 第014章:接触(04) 第015章:接触(05) 第016章:接触(06) 第017章:接触(07) 第018章:接触(08) 第019章:接触(09) 第020章:接触(10) 第021章:帮助(01) 第022章:帮助(02) 第023章:帮助(03) 第024章:帮助(04) 第025章:帮助(05) 第027章:帮助(07) 第028章:帮助(08) 第029章:帮助(09) 第030章:帮助(10) 第031章:同居(01) 第032章:同居(02) 第033章:同居(03) 第034章:同居(04) 第035章:同居(05) 第036章:同居(06) 第037章:同居(07) 第040章:同居(10) 第046章:交往(06) 第047章:交往(07) 第048章:交往(08) 第050章:交往(10) """ selector=etree.HTML(html) a=selector.xpath('//@href') index=1 for i in a: q='http:' url=q+i if url == 'https://www.hongxiu.com/lastPage/12115534503935401': break else: response=requests.get(url) response.encoding='utf-8' selector=etree.HTML(response.text) b=selector.xpath('//div/p') print('第{}章'.format(index)) for l in b: print(l.text) index=index+1

使用sublime text运行上面代码,结果如下图所示在这里插入图片描述 然后把下面的文字复制粘贴到记事本里面保存即可阅读了。 在这里插入图片描述 第一次在CSDN上写东西,如果哪里写得不好请见谅啊,希望对你们有帮助。



【本文地址】


今日新闻


推荐新闻


CopyRight 2018-2019 办公设备维修网 版权所有 豫ICP备15022753号-3