您的位置:首页技术文章
文章详情页

如何在django中运行scrapy框架

【字号: 日期:2024-10-09 17:13:04浏览:36作者:猪猪

1.新建一个django项目,

2.前端展示一个按钮

<form action='/start/' method='POST'> {% csrf_token %} <input type='submit' value='启动爬虫'></form>

3.在django项目的根目录创建scrapy项目

4.cmd命令行运行:scrapyd 启动服务

5.将scrapy项目部署到当前工程:scrapyd-deploy 爬虫名称 -p 项目名称

6.views.py

# 首页def index(request): return render(request,’index.html’,locals())def start(request): if request.method == ’POST’: # 启动爬虫 url = ’http://localhost:6800/schedule.json’ data = {’project’: ’ABCkg’, ’spider’: ’abckg’} print(requests.post(url=url, data=data)) return JsonResponse({’result’:’ok’})

7.在本地6800端口点击jobs当前爬虫项目就在运行了。

8.写一个按钮,点击停止scrapy爬虫

def stop(request): if request.method == ’POST’: # 停止爬虫 url = ’http://127.0.0.1:6800/cancel.json’ data={'project':’ABCkg’,’job’:’b7fe64ee7ad711e9b711005056c00008’} print(requests.post(url=url, data=data)) return JsonResponse({’result’:’stop’})

总结:

----------------scrapyd 管理----------------------

1、获取状态

http://127.0.0.1:6800/daemonstatus.json

2、获取项目列表

http://127.0.0.1:6800/listprojects.json

3、获取项目下已发布的爬虫列表

http://127.0.0.1:6800/listspiders.json?project=myproject

4、获取项目下已发布的爬虫版本列表

http://127.0.0.1:6800/listversions.json?project=myproject

5、获取爬虫运行状态

http://127.0.0.1:6800/listjobs.json?project=myproject

6、启动服务器上某一爬虫(必须是已发布到服务器的爬虫)

http://localhost:6800/schedule.json

(post方式,data={'project':myproject,'spider':myspider})

7、删除某一版本爬虫

http://127.0.0.1:6800/delversion.json -d project=项目名 -d versions

(post方式,data={'project':myproject,'version':myversion})

8、删除某一工程,包括该工程下的各版本爬虫

http://127.0.0.1:6800/delproject.json

(post方式,data={'project':myproject})

9、取消爬虫

http://127.0.0.1:6800/cancel.json

(post方式,data={'project':myproject,’job’:myjob})

以上就是本文的全部内容,希望对大家的学习有所帮助,也希望大家多多支持好吧啦网。

标签: Django
相关文章: