用Python爬下十几万本小说,再也不会闹书荒!

2018-05-02 18:00:28 浏览数 (1)

自从看了师傅爬了顶点全站之后,我也手痒痒的,也想爬一个比较牛逼的小说网看看,于是选了宜搜这个网站,好了,马上开干,这次用的是mogodb数据库,感觉mysql太麻烦了下图是我选择宜搜里面遍历的网站

先看代码框架图

第一个,肯定先提取排行榜里面每个类别的链接啊,然后进入链接进行爬取,先看all_theme文件

看看运行结果,这是书籍类目的

这是构造出的每一个类目里面所有的页数链接,也是我们爬虫的入口,一共5000多页

接下来是封装的数据库操作,因为用到了多进程以及多线程每个进程,他们需要知道那些URL爬取过了、哪些URL需要爬取!我们来给每个URL设置两种状态:

  • outstanding:等待爬取的URL
  • complete:爬取完成的URL
  • processing:正在进行的URL。

嗯!当一个所有初始的URL状态都为outstanding;当开始爬取的时候状态改为:processing;爬取完成状态改为:complete;失败的URL重置状态为:outstanding。

为了能够处理URL进程被终止的情况、我们设置一个计时参数,当超过这个值时;我们则将状态重置为outstanding。

接下来是爬虫主程序

让我们来看看结果吧

里面因为很多都是重复的,所有去重之后只有十几万本,好失望......

作者:蜗牛仔 來源:http://www.jianshu.com/p/a1c5183f3f4d


0 人点赞