首先得有一個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"
}
