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

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

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

先看代码框架图

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

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

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

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

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

扫描二维码关注公众号,回复: 4896816 查看本文章

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

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

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

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

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

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

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

接下来是爬虫主程序

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

让我们来看看结果吧

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

猜你喜欢

转载自blog.csdn.net/qq_42156420/article/details/86409380
今日推荐