使用scrapy按章节抓取电子书,汇集成册。
网上关于电子书分门别类,有很多资源网站。如果想在线阅读,需要网络流量不说,还不能搜索跳转。于是想把开放的资源爬取下来,细细阅读。
推荐比较流行的scrapy框架。它是基于python的。下面介绍大致步骤。
1.安装scrapy框架
使用pip工具安装爬虫框架scrapy。
pip install scrapy
2.创建爬虫项目
scrapy startproject shuku
3.确定爬虫选择器
为了获取自己感兴趣或者关键性的内容,可以先进入交互式模式。
scrapy shell
加载要爬取的网址
fetch("https://www.52shuku.com/wenxue/")
使用选择器获取感兴趣的元素集。
这一阶段需要反复调试和塞选,来保障爬取内容的完整性和有效性。
4.编写item代码
确定要爬取的目标,把需要的字段添加到item里面,下面的爬取到的数据会放到里面。
这一步很关键,也很简洁。不需要太多的代码量,但却关乎要爬取的关键字段数据等。
5.编写spider代码
根据要爬取内容的类别,可以划分为不同的spider。对于包含链接的多级爬虫,可以分步骤递归式爬取。
6.便携pipeline代码
这部分类似管道的功能,爬取的内容数据会经过这个管道,被处理加工。
可以把抓取的item存放到各种各样的数据库中、普通文件中、或者通过网络发送到指定的地址。
7.执行爬虫
可以指定爬虫名称,执行爬虫。这个过程可能需要时间等待,泡杯☕️去吧!
scrapy crawl shuku
8.部分书单
补充:可能需要一个不错的纯文本阅读器,读之前最好再修正一下内容。
下面附上项目的代码,可以参考使用。