美文网首页信息组织与信息检索
数据采集练习之部署爬虫到Scrapy Cloud

数据采集练习之部署爬虫到Scrapy Cloud

作者: cathy1997 | 来源:发表于2018-08-02 09:39 被阅读193次

介绍

Scrapinghub公司提供基于云的Web爬行平台和数据即服务,Scrapy Cloud是Scrapinghub下的一个托管的云服务器。

scrapinghub的产品:Scrapy Cloud、Portia、Splas、Crawlera

Scrapy Cloud使用的优点:

  • 免除了安装和监控服务器的需要
  • 提供了非常美观的UI来管理各个Spider,爬虫可视化
  • 可查看被抓取的Item,日志和状态等
  • Scrapy Cloud很多功能是免费的
  • Crawlera可以帮助用户绕过反爬虫措施,从而更快的抓取大型网站
  • 爬取的数据可以存储在scrapinghub提供的数据库中

使用shub命令行工具来将spider部署到Scrapy Cloud,参考官方文档

注册账号 & 新建 scrapy cloud project

scrapyinghub 官网 注册账号,这里直接使用GitHub账号登录。

登录

登录后 create project,选择spider类型为Scrapy。


创建一个demo项目

在新建的项目下,查看 Code & Deploys,找到 API key 和 Project ID


查看API Key

本地配置并部署到scrapinghub

安装Scrapinghub命令行客户端shub。

$ pip install shub
install shub

查看shub版本:


shub版本

login 并输入 API key,登录之后会一直保持连接,不会随着命令窗口的关闭而关闭。

$ shub login
Enter your API key from https://dash.scrapinghub.com/account/apikey
API key: xxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxx
Validating API key...
API key is OK, you are logged in now.

上传工程并输入project ID
注意:使用之前需要提前配置好python的环境变量

$ cd quotes # 打开要运行的文件
$ shub deploy 313348
上传成功

开始进行数据爬取

在自己的项目面板下点击run开启爬虫。

image.png

运行过程中可以实时监控 crawler job 的情况:发出的请求数、抓取的 item 数、log 和 error 信息、执行的时间等都一目了然。运行完毕,查看爬取详细信息:


详细信息

可以看到,总共获得了100个items,发出了11个requests请求,运行时间为32秒。分别点击查看详细信息:


items详细信息按照每个item排列
requests请求先查看了robots.txt文件再访问目标网址

存储items

  • 导出json文件


    导出json文件
  • 存储到数据库


    存到publish dataset

    查看,下一次就可以通过Dataset-->Quotes直接打开这些数据了。


    查看数据

参考

相关文章

网友评论

    本文标题:数据采集练习之部署爬虫到Scrapy Cloud

    本文链接:https://www.haomeiwen.com/subject/qtfljftx.html