• scrapy爬虫部署


    在开始之前先要吐槽一下CSDN,昨晚怀着激动得心情写下了我人生中的第一篇博文,今天审核通过后发现所有的图片都不见了,瞬间就不开心了。所以不得不又申请了博客园的账号,重新开始。

    前段时间一直研究通用爬虫,做的过程中也是各种问题,不过好在磕磕绊绊搞出点眉目,中间学到了不少东西,感觉互联网真的好神奇。

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

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

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

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

      

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

    我的scrapy.cfg设置如下:

    [deploy:scrapyd1]

    url = http://192.168.2.239:6800/

    project = Crawler

    1. 启动scrapyd

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

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

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

    2. 发布工程到scrapyd

    scrapyd-deploy <target> -p <project>

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

    scrapyd-deploy scrapyd1 -p Crawler

     

    3. 验证是否发布成功

    scrapyd-deploy -L <target>

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

    scrapyd-deploy -L scrapyd1

    也可以用scrapyd-deploy -l

    4. 启动爬虫

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

    通过页面可以实时监控爬虫运行效果:

    5. 终止爬虫

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

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

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

  • 相关阅读:
    记录一次性能优化(转)
    Java线程池使用说明
    Spring AOP: Spring之面向方面编程
    hibernate 联合主键生成机制(组合主键XML配置方式)
    Hibernate配置文件hbm主键的generator可选项
    关于spring-mvc的InitBinder注解的参数
    Quartzs -- Quartz.properties 配置
    开源调度框架Quartz最佳实践
    Windows系统上如何使用SSH
    导入DEM数据到ArcGIS
  • 原文地址:https://www.cnblogs.com/jinhaolin/p/5033733.html
Copyright © 2020-2023  润新知