Bootstrap

爬虫练习-爬取起点中文网小说信息

前言:

爬取起点中文网全部小说基本信息,小说名、作者、类别、连载\完结情况、简介,并将爬取的数据存储与EXCEL表中

本文为整理代码,梳理思路,验证代码有效性——2019.12.15


环境:
Python3(Anaconda3)
PyCharm
Chrome浏览器

主要模块:
xlwt
lxml
requests
time

1.

爬取起点中文网全部小说首页及所需信息如下
在这里插入图片描述

2.

分析请求的网页

http://a.qidian.com/? page=1  # 第一页
http://a.qidian.com/? page=2  # 第二页
http://a.qidian.com/? page=3  # 第三页
...

通过观察发现,全部小说总共有五页,后面的无法正常访问到,那么我们构造列表解析式
PS:很奇怪的是,有近一百万本小说,最后仅只能爬取五页共计八十多本,当然这是后话了

urls = ['http://a.qidian.com/? page={}'.format(str(i)) for i in range(1, 5)]

3.

在这里插入图片描述
解析并获取数据,打开开发者工具查看可知每本小说的数据均在标签class为“all-img-list cf”的ul下的 li 中,我们可以先行将其提取出来方便后续的数据解析

 # 定位大标签,以此循环
infos = selector.xpath('//ul[@class="all-img-list cf"]/li')

for info in infos:
    title = info.xpath('div[2]/h4/a/text()')[0]
    author = info.xpath('div[2]/p[1]/a[1]/text()')[0]
    style_1 = info
;