Python零基础爬虫项目,采集小说网站整站数据

本文介绍了如何使用Python进行网络爬虫,通过requests和lxml库抓取小说网站的数据,包括小说名字、作者名、分类、章节及内容。在遇到URL参数规律不一致的问题时,采取抓取目录页面所有章节链接的方法。最后,将数据写入txt文件,便于阅读。
摘要由CSDN通过智能技术生成

声明:本文只做学习使用,禁止用作非法途径,一切因为爬虫技术使用不当造成的不良后果皆与本人无关

 

需要用到的库和模块

  • requests库
  • lxml库下的etree模块
  • requests库下的RequestException类
  • 很多人学习python,不知道从何学起。
    很多人学习python,掌握了基本语法过后,不知道在哪里寻找案例上手。
    很多已经做案例的人,却不知道如何去学习更加高深的知识。
    那么针对这三类人,我给大家提供一个好的学习平台,免费领取视频教程,电子书籍,以及课程的源代码!??¤
    QQ群:623406465

要获取的信息

网站 http://www.aixiawx.com

首先我们要确定要得到什么数据

  • 小说的名字、作者名、小说分类
  • 第几章
  • 每章节的内容

主要步骤

(一)构建请求头

headers = {
    'User-Agent': '****************',#可填入自己的
}
base_url = 'http://www.aixiawx.com/27/27010/'

(二)分析URL参数规律
在这里插入图片描述
在这里插入图片描述

随便打开一个小说的章节,由此可见这个url参数是递增的是吧。
但是最开始的时候我观察到在这里的url是有递增规律的,就没有多看几眼,然后使用了遍历就发生了Error。
最终我测试发现部分章节不符合规律,所以不能使用这个方法来遍历url。
这样怎么办呢?

在目录页面拥有所有章节的url链接
可以抓取章节页面的url使之形成一个列表,然后遍历该列表,即可获取每个章节的链接

  1. 目录页面分析
    目录分析

根据章节的数量判断,<dd>标签一个是最合适的选择标签,所以我们使用<dd>标签来做获取章节链接的顶级索引

代码如下:

def analysis_catalogue(catalogue_html: "目录HTML文档"):
    '''
    解析目录HTMl文档
    获取小说章节链接
    对章节链接排序
    '''
     html = etr
评论 1
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

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

余额充值