之前写windows下面使用scrapyd的时候挖了个坑说要写一篇linux使用scrapyd不是scrapy项目的文章,现在过来填坑了,当然最重要的还是能帮助到有需要的人,因为我还是发现。。。找个教程真是太不容易了,最后也还是东平西凑才搭起来环境的。另外本教程使用了vritualenv虚拟环境安装得scrapyd,因为正式scrapyd老是报错,如果你在正式环境使用也没有关系,我会在切换环境的地方作说明。
安装
pip install scrapy ##有一些依赖库要先装,这里不作太多的说明了
pip install scrapyd
pip install scrapyd-client ##scrapyd部署项目用到的客户端
sudo apt-get install supervisor
使用supervisor运行scrapyd
编辑一个配置文件,用来控制scrapyd的启动
vi scrapyd_supervisor.conf
[program:scrapyd]
command=source /home/ubuntu/pure_scrapy/bin/activate ##注意了,此处用来激活虚拟环境,如果您没有用到虚拟环境,只需要注释这句即可。
command=scrapyd
user=ubuntu ##用户为ubuntu
autostart=true
autorestart=true
redirect_stderr=True
复制到supervisor的配置目录下
sudo cp scrapyd_supervisor.conf /etc/supervisor/conf.d/
刷新一下supervisor
sudo supervisorctl reread
## 此处有提示更新
sudo supervisorctl update
## 此处有提示更新
##如果要重启则使用
sudo supervisorctl restart scrapyd
查看是否已经启动scrapyd
ps -ef | grep scrapyd
## 如果看到有scrapyd正在运行的进程,说明已经启动scrapyd成功了
部署你的项目到scrapyd中(先到你的scrapy项目, 这里是yourprojectname)
scrapyd-deploy localhost -p yourprojectname
运行爬虫
curl http://localhost:6800/schedule.json -d project=yourprojectname -d spider=yourspidername
若有如下提示则说明成功:
{"status": "ok", "jobid": "6487ec79947edab326d6db28a2d86511e8247444"}
ok,如果你坚持做到这里,那么你应该是成功了的,恭喜你,如果你成功了,麻烦点赞或者留言告诉我一声让我高兴一下