scrapy爬虫部署

爬虫如何部署到服务器上呢,接下来就开始研究scrapyd。网上搜了很多资料,都在介绍scrapy deploy命令,但是我在机器上安装上scrapyd之后,怎么运行都是提示没有deploy这个命令,真是奇怪,为什么别人都可以呢。经过几番波折,终于在最新的官方文档里面找到了答案。附上地址和截图:
http://doc.scrapy.org/en/latest/topics/commands.html
scrapy爬虫部署

原来1.0版本以后这个命令已经废弃了,再一查我安装的版本是1.0.3。然后就根据提示去下载scrapyd-client。

本以为往后就会顺利一点,但是安装了scrapyd-client以后运行,还是一直提示没有scrapy-client命令。群里请教,网上查资料都没有解决,在我快绝望的时候终于在stack overflow上找到了答案。附上地址和截图:http://stackoverflow.com/questions/22646323/windows-scrapyd-deploy-is-not-recognized
scrapy爬虫部署

根据人家提供的方法一试,果然OK,感觉SO真的好强大。

解决了以上问题,下面的部署就顺利的多了。记一下以方便以后查阅,也给像我一样的菜鸟一点参考。

我的scrapy.cfg设置如下:

[deploy:scrapyd1]

url = http://192.168.2.239:6800/

project = Crawler

1. 启动scrapyd

在要部署的服务器上启动scrapyd。显示以下内容表示启动成功。
scrapy爬虫部署

默认的端口是6800。可以在浏览器中查看结果,比如:http://192.168.2.239:6800/。显示效果如下:
scrapy爬虫部署

可以点击jobs查看爬虫运行情况:
scrapy爬虫部署

2. 发布工程到scrapyd

scrapyd-deploy <target> -p <project>

首先要切换目录到项目所在路径,然后执行下列指令:

scrapyd-deploy scrapyd1 -p Crawler

scrapy爬虫部署

3. 验证是否发布成功

scrapyd-deploy -L <target>

如果现实项目名称,表示发布成功。

scrapyd-deploy -L scrapyd1

scrapy爬虫部署
也可以用scrapyd-deploy -l
scrapy爬虫部署
4. 启动爬虫

curl http://192.168.2.239:6800/schedule.json -d project=Crawler -d spider=CommonSpider

scrapy爬虫部署

通过页面可以实时监控爬虫运行效果:
scrapy爬虫部署
5. 终止爬虫

curl http://192.168.2.239:6800/cancel.json -d project=Crawler -d job= 8270364f9d9811e5adbf000c29a5d5be

scrapy爬虫部署

部署过程中可能会有很多错误,包括缺少第三方库啥的,自己根据提示即可解决。

以上只是对scrapyd的初步了解,很多深层的内容等慢慢研究以后会持续更新总结。如果以上内容哪里有不对的地方,请各位朋友及时回复交流。

相关文章:

  • 2022-12-23
  • 2021-11-19
  • 2021-06-30
  • 2021-11-15
  • 2022-01-10
  • 2021-11-24
  • 2021-10-14
  • 2022-01-10
猜你喜欢
  • 2022-12-23
  • 2022-12-23
  • 2021-05-03
  • 2021-08-12
  • 2022-02-08
  • 2021-12-10
  • 2022-01-12
相关资源
相似解决方案