前言
在实现一个例子之前,首先要明确自己想要获得怎样的结果:爬取近六年出版评分在7分以上的漫画
最后我想要得到的信息是所有满足要求的书名
要求有二:1、近六年出版,即出版时间 >= 2013年 2、评分在7分以上
接下来针对我们的要求,去观察页面元素
我们观察一下页面(https://book.douban.com/tag/%E6%BC%AB%E7%94%BB?start=0&type=T),找到这两点信息的位置(图中黄色底部分信息)
在检查元素里找到这两点信息的位置:年份信息包含在一个class为"pub"的标签中
评分信息包含在class为star clearfix的div标签的子标签span:class为rating_nums的信息中
注意:因为在后面爬虫的时候发现中间有些页面因为没有评分而没有class为rating_nums的标签,因此在爬取评分信息的时候
我们要先找到star clearfix 的这个div标签,再对具体情况进行处理
正在上传...取消
书名:在包含title元素的a标签中
结束上述准备以后,明确我们要提取的信息
1、书名:在包含title元素的a标签中
2、出版年份:在class为'pub'的div信息中
3、评分:在class为star clearfix的div标签的子标签span:class为rating_nums的信息中
本例中使用的网页解析工具是BeautifulSoup,比较好上手,合适网路爬虫初学者的一个可以代替正则表达式的网页解析工具
首先要安装,可以直接使用pip进行安装
安装代码:pip install bs4
安装成功后就可以直接在python环境下使用这个包里的内容了
接下来就可以开始去构造爬虫
结束上述准备以后,明确我们要提取的信息
1、书名:在包含title元素的a标签中
2、出版年份:在class为'pub'的div信息中
3、评分:在class为star clearfix的div标签的子标签span:class为rating_nums的信息中
本例中使用的网页解析工具是BeautifulSoup,比较好上手,合适网路爬虫初学者的一个可以代替正则表达式的网页解析工具
首先要安装,可以直接使用pip进行安装
安装代码:pip install bs4
安装成功后就可以直接在python环境下使用这个包里的内容了
接下来就可以开始去构造爬虫
import内容如下
初始化访问urllist列表
构造爬虫信息筛选函数,返回每一页符合条件的书名列表(详细解释见备注)
函数的调用与结果输出:
实际在用的时候可以把结果列表转为csv存到数据中,不过目前我还不会这个……以后看看能不能导出来
最后贴一个爬下来的数据截图!