要調試Python Scrapy爬蟲,您可以使用以下方法:
print()
語句:在爬蟲的parse()
方法或其他自定義函數中添加print()
語句,以輸出所需的信息。例如:def parse(self, response):
print("訪問的URL:", response.url)
for item in response.css('div.item'):
print("標題:", item.css('h2.title::text').get())
pdb
庫:在代碼中添加import pdb; pdb.set_trace()
,以在運行時設置斷點。例如:import pdb
def parse(self, response):
pdb.set_trace() # 設置斷點
for item in response.css('div.item'):
title = item.css('h2.title::text').get()
print("標題:", title)
運行爬蟲后,當代碼執行到斷點時,您將在命令行界面進入調試模式。您可以使用n
(next)逐步執行代碼,使用c
(continue)繼續執行代碼,使用q
(quit)退出調試模式。此外,您還可以查看變量值、調用堆棧等。
my_spider
的爬蟲,只需在命令行中輸入:scrapy crawl my_spider
要啟用調試模式,可以使用-s LOG_FILE=scrapy.log
選項將日志輸出到文件,并使用-s DEBUG=True
選項啟用調試模式。例如:
scrapy crawl my_spider -s LOG_FILE=scrapy.log -s DEBUG=True
這將啟動爬蟲并將調試信息輸出到scrapy.log
文件。您還可以在命令行中使用Ctrl+C
暫停爬蟲的執行。
在PyCharm中,您可以右鍵單擊要調試的Python文件,然后選擇“Debug”。在Visual Studio Code中,您可以創建一個名為.vscode/launch.json
的配置文件,其中包含調試設置。例如:
{
"version": "0.2.0",
"configurations": [
{
"name": "Python: Scrapy",
"type": "python",
"request": "launch",
"program": "${workspaceFolder}/my_project/my_spider.py",
"console": "integratedTerminal"
}
]
}
然后,您可以使用“開始調試”按鈕啟動調試會話,并在代碼中設置斷點。