您好,登錄后才能下訂單哦!
這篇文章主要講解了在django中運行scrapy框架的方法,內容清晰明了,對此有興趣的小伙伴可以學習一下,相信大家閱讀完之后會有幫助。
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中運行scrapy框架的方法有進一步的了解,如果還想學習更多內容,歡迎關注億速云行業資訊頻道。
免責聲明:本站發布的內容(圖片、視頻和文字)以原創、轉載和分享為主,文章觀點不代表本網站立場,如果涉及侵權請聯系站長郵箱:is@yisu.com進行舉報,并提供相關證據,一經查實,將立刻刪除涉嫌侵權內容。