首先得有一個Scrapy項目,我在Desktop上新建一個Scrapy的項目叫test,在Desktop目錄打開命令行,鍵入命令:
scrapy startproject test1
目錄結構如下:
打開Pycharm,選擇open
選擇項目,ok
打開如下界面之后,按alt + 1, 打開project 面板
在test1/spiders/,文件夾下,新建一個爬蟲spider.py, 注意代碼中的name="dmoz"。這個名字后面會用到。
在test1目錄和scrapy.cfg同級目錄下面,新建一個begin.py文件(便於理解可以寫成main.py),注意箭頭2所指的名字和第5步中的name='dmoz'名字是一樣的。
from scrapy import cmdline cmdline.execute("scrapy crawl dmoz".split())
7. 上面把文件搞定了,下面要配置一下pycharm了。點擊Run->Edit Configurations
8. 新建一個運行的python模塊
9. Name:改成spider; script:選擇剛才新建的那個begin.py文件;Working Direciton:改成自己的工作目錄
10. 至此,大功告成了,點擊下圖,右上角的按鈕就能運行了。
調試
可以在其他代碼中設置斷點,就可以debug運行
遇到問題
1. Unknown command: crawl
調試運行,斷點並未命中,控制台輸出信息如下:
H:\Python\Python36\python.exe "H:\Program Files (x86)\JetBrains\PyCharm Community Edition 4.5.4\helpers\pydev\pydevd.py" --multiproc --client 127.0.0.1 --port 59810 --file H:/Python/Python36/Lib/site-packages/scrapy/cmdline.py crawl quotes -o quotes.jl pydev debugger: process 4740 is connecting Connected to pydev debugger (build 141.3058) Scrapy 1.3.2 - no active project Unknown command: crawl Use "scrapy" to see available commands Process finished with exit code 2
工作目錄設置有誤,造成無法識別 scrapy 命令,按照上文所說,將工作目錄設置為包含 scrapy.cfg,重新運行,問題解決。
轉自:https://www.jb51.net/article/129346.htm
本文的關鍵在於第七步配置pycharm了,點擊Run->Edit Configurations.
scrapy工程的自啟動文件main.py文件在未進行以上設置的時候不能使用.會報錯"crawl"找不到.
-----------
碰巧的是在VScode下,[運行]-->[添加配置]后,scrapy也運行正常了,可以進行調試了.
其.vscode文件夾下會有兩個文件:
# launch.json { // 使用 IntelliSense 了解相關屬性。 // 懸停以查看現有屬性的描述。 // 欲了解更多信息,請訪問: https://go.microsoft.com/fwlink/?linkid=830387 "version": "0.2.0", "configurations": [ { "name": "Python: 當前文件", "type": "python", "request": "launch", "program": "${file}", "console": "integratedTerminal" } ] } # settings.json { "python.pythonPath": "/home/tom/.virtualenvs/chong/bin/python" }