Python爬取小说,python爬虫爬取小说代码

Python爬取小说,python爬虫爬取小说代码,python爬虫之爬取笔趣阁小说

本文主要介绍python爬虫的小说《爬笔趣亭》。文中有非常详细的代码示例,对正在学习python爬虫的朋友很有帮助。有需要的可以参考一下。

目录

前言1。首先导入相关模块2。向网站发送请求并获取网站数据3。获取页面数据后提取数据4。获得小说详情页链接后,访问详情页两次,获得文章数据5。解析小说详情第6页静态页面。下载数据。

前言

今天为了上班方便钓鱼,写了一个爬碧曲亭小说的程序。嗯,其实就是找个学习python的目的,分享一下。

一、首先导入相关的模块

导入操作系统

导入请求

从bs4导入BeautifulSoup

二、向网站发送请求并获取网站数据

网站最后一位是一本书的id值,一位对应一本小说。我们以id为1的小说为例。

进入网站后发现有章节列表,于是先抢完了小说的名字。

#声明请求头

标题={

用户代理':' Mozilla/5.0(Windows NT 10.0)apple WebKit/537.36(KHTML,类似Gecko)Chrome/88 . 0 . 4324 . 182 Safari/537.36 '

}

#创建一个文件夹来保存小说文本

如果OS.path.exists('。/小说’):

Os.mkdir('。/小说/')

#访问网站并获取页面数据

response=requests . get(' http://www . biquw . com/book/1/')。文本

打印(响应)

写这个地方,学生可能会发现一个问题。当我正常访问网站时,为什么返回的数据是乱码?

这是因为页面html的编码格式与python访问和获取数据的解码格式不一致。python默认的解码方式是utf-8,但页面编码可能是GBK或GB2312等。所以我们需要让python代码对页面的解码方式有一个自动的改变。

# # # #重写访问代码

``蟒蛇皮

response=requests . get(' http://www . biquw . com/book/1/')

response . encoding=response . apparent _ encoding

打印(响应.文本)

'''

这样返回的中文数据是正确的。

'''

三、拿到页面数据之后对数据进行提取

当你通过正确的解码方法得到页面数据后,接下来就是完成静态页面分析了。我们需要从整个网页数据中获取我们想要的数据(章节列表数据)。

1.首先打开浏览器。

2.按F12调出开发者工具。

3.选择元素选择器。

4.选择我们需要的数据并定位页面中的元素。

5.观察数据的元素标签。

'''

根据上图,数据存储在A标签中。a的母标签是李,李的母标签是ul标签,div标签在ul标签之上。所以如果想获取整页的小说章节数据,需要先获取div标签。div标签包含class属性。我们可以通过class属性获得指定的div标签。详见代码~

'''

# lxml: html解析库将html代码转换成python对象,python可以控制html代码。

soup=beautiful soup(response . text,' lxml ')

book_list=soup.find('div ',class_='book_list ')。查找全部(' a ')

# soup对象获取批量数据后返回一个列表,我们可以迭代提取列表。

对于book_list中的图书:

book_name=book .文本

#获取列表数据后,需要获取文章详情页的链接,该链接在A标签的href属性中。

book_url=book['href']

四、获取到小说详情页链接之后进行详情页二次访问并获取文章数据

book _ info _ html=requests . get(' http://www . biquw . com/book/1/' book _ URL,headers=headers)

book_info_html .编码=book _ info _ html . apparent _ encoding

soup=beautiful soup(book _ info _ html . text,' lxml ')

五、对小说详情页进行静态页面分析

info=soup.find('div ',id='htmlContent ')

打印(信息.文本)

六、数据下载

用('。/novel/'book _ name '。txt ',' a ',编码=' utf-8 ')作为f:

f.write(信息.文本)

最后,我们来看看代码效果~

抓取的数据

这篇关于python爬虫的爬行小说到此为止。关于python爬行小说的更多信息,请搜索我们之前的文章或者继续浏览下面的相关文章。希望你以后能支持我们!

郑重声明:本文由网友发布,不代表盛行IT的观点,版权归原作者所有,仅为传播更多信息之目的,如有侵权请联系,我们将第一时间修改或删除,多谢。

留言与评论(共有 条评论)
   
验证码: