如何用 Django 管理 Scrapy 几十万个爬虫脚本?

文章目录

  • 内容介绍
  • 业务流程
  • 遇见问题
  • 我的项目

内容介绍

本文介绍的是根据我的从业多年的经验在巨人的肩膀上开发的数据采集应用,也就是我们俗称的爬虫系统。

既然说到系统就不是单独的爬虫脚本,是整个一套自动化采集的内容。尝试过很多种方式构建这套系统,这里把最简单容易实现且效果最好的内容分享出来。现在各大每日与数据相关的企业基本都采用这种数据采集技术,简单、快捷、实用。这里简述一下基于Python Django的产品设计与应用。

  • 编程语言:Python
  • 使用框架:Scrapy、Gerapy
  • 数据仓库:Mongodb
  • 其他内容:IP池等

业务流程

如何用 Django 管理 Scrapy 几十万个爬虫脚本?_第1张图片

遇见问题

  • 抓取的网站失效了怎么发现?
  • IP池如何使用?
  • 部署中随时遇见的各种坑。
  • 抓取的数据后续如何使用?

等等使用中各种问题百度或者在我的专栏中都可以查询到,如果没有可以留言或者艾特我,这里只介绍业务流程与功能使用。

我的项目

1.整理数据采集文档
如何用 Django 管理 Scrapy 几十万个爬虫脚本?_第2张图片
在Excel表中将抓取的目标网站整理,用数据透视整理后是这样。
如何用 Django 管理 Scrapy 几十万个爬虫脚本?_第3张图片
使用比较笨的方式而不是穷尽的方式进行采集的话,这个步骤是不可避免的。

因为抓来的数据有着不同的用途,所以还是前期的基础工作多做一些,否则后面到数据清洗的时候会很麻烦。比如说文章的分类、来源这种,方便后期的维护和管理。

具体脚本编写方式参考专栏中的 Scrapy 目标网站抓取举例。或者看这里【Python 爬虫数据采集和管理标准化项目】项目介绍与内容目录索引 。

在记录的表单中整理成这样,脚本名称对应的Spider下的py文件。
如何用 Django 管理 Scrapy 几十万个爬虫脚本?_第4张图片
2.Scrapy框架爬虫脚本的编写
根据模板进行数据采集脚本的编写,制作成规范化脚本,方便维护和编写。
如何用 Django 管理 Scrapy 几十万个爬虫脚本?_第5张图片
根据模板所有抓取数据的页面都根据这个模板去套用就可以了。然后在你本地调试好,确保数据可以写入Mongodb中。

3.Gerapy框架实现爬虫管理

部署好主机,如果你有多个机器的话可以分开部署同样的脚本,也可以不同机器部署不同的脚本,根据喜好吧。这里的项目就是上面Scrapy写好可以执行的脚本。
​​如何用 Django 管理 Scrapy 几十万个爬虫脚本?_第6张图片

然后根据项目打包、部署。
如何用 Django 管理 Scrapy 几十万个爬虫脚本?_第7张图片
部署完成之后,设置写好的Spider下的爬虫脚本。这里部署脚本可以设置各种参数比如说每次执行的间隔,开始时间。
如何用 Django 管理 Scrapy 几十万个爬虫脚本?_第8张图片
可以查询每个脚本的执行状态。
如何用 Django 管理 Scrapy 几十万个爬虫脚本?_第9张图片
这样部署好之后就可以做到全自动进行数据采集了。

最后进入Mongodb看看采集的数据。
如何用 Django 管理 Scrapy 几十万个爬虫脚本?_第10张图片
然后每个爬虫脚本反复循环就可以了。

你可能感兴趣的:(Python,数据自动化采集与管理,python,数据分析,数据采集)