溫馨提示×

溫馨提示×

您好,登錄后才能下訂單哦!

密碼登錄×
登錄注冊×
其他方式登錄
點擊 登錄注冊 即表示同意《億速云用戶服務條款》

Python學習教程:關(guān)于Scrapy爬蟲項目運行和調(diào)試的小技巧-第一講

發(fā)布時間:2020-08-10 15:09:04 來源:ITPUB博客 閱讀:137 作者:千鋒Python唐小強 欄目:編程語言

Python學習教程:關(guān)于Scrapy爬蟲項目運行和調(diào)試的小技巧

掃除運行Scrapy爬蟲程序的bug之后,基本可以開始進行編寫爬蟲邏輯了。在正式開始爬蟲編寫之前,在這里跟大家介紹四個小技巧,可以方便我們操縱和調(diào)試爬蟲。

一、建立main.py文件,直接在Pycharm下進行調(diào)試

很多時候我們在使用Scrapy爬蟲框架的時候,如果想運行Scrapy爬蟲項目的話,一般都會想著去命令行中直接執(zhí)行命令“scrapy crawl crawler_name”,其中crawler_name指的是爬蟲的名字,在一開始創(chuàng)建Scrapy爬蟲模板的時候就指定了的,而且在該爬蟲項目中具有唯一性。但是每次跑到命令行下去執(zhí)行,看交互的結(jié)果,有時候并不是很清晰,所以這里介紹一種方法,可以幫助大家提高開發(fā)效率,尤其是調(diào)試的時候更是顯得方便。

在與爬蟲項目的scrapy.cfg文件同級目錄下建立一個main.py文件,用于控制整個爬蟲項目的執(zhí)行。

Python學習教程:關(guān)于Scrapy爬蟲項目運行和調(diào)試的小技巧-第一講

在該文件夾中寫入的代碼見下圖。其中execute函數(shù)是內(nèi)嵌在scrapy中的,調(diào)用這個函數(shù)可以直接調(diào)用該Scrapy工程項目的爬蟲腳本,這個函數(shù)的執(zhí)行需要在爬蟲項目的父目錄下進行。而第7行代碼的意思就是獲取當前py文件的父目錄,省去我們直接復制路徑的精力和時間,同時也方便我們將該項目放到其他的平臺上去運行,不會報路徑的錯誤。execute函數(shù)里邊的參數(shù)其實就是將Scrapy爬蟲執(zhí)行命令拆分,然后分別以一個字符的方式放到了一個數(shù)組中。

Python學習教程:關(guān)于Scrapy爬蟲項目運行和調(diào)試的小技巧-第一講

之后我們直接運行這個main.py文件便可以調(diào)用Scrapy爬蟲程序了。

二、多用Debug進行調(diào)試,提高開發(fā)速度

相信用過Pycharm的小伙伴都看到過Debug這個東東,它的英文意思就是“小蟲子”,在Pycharm中的logo也是個小蟲子,像是七星瓢蟲一樣,不過很多小伙伴可能還沒有怎么用過,這里簡單的介紹給大家,希望大家日后可以多多用到,對于項目的調(diào)試十分有幫助。

在進行Debug調(diào)試之前,我們需要在我們想要調(diào)試的代碼左側(cè)進行打斷點,斷點一般是紅色的,打斷點的方式很簡單,只需要在代碼的左側(cè)點擊一下左鍵即可,如下圖所示。

Python學習教程:關(guān)于Scrapy爬蟲項目運行和調(diào)試的小技巧-第一講

斷點設置完成之后,便可以去main.py文件進行調(diào)試了。在main.py文件點擊右鍵,然后選擇“Debug ‘main’”,如下圖所示。

Python學習教程:關(guān)于Scrapy爬蟲項目運行和調(diào)試的小技巧-第一講

之后爬蟲程序便開始進行調(diào)試,并且會返回一系列結(jié)果,如下圖所示,可以方便的進行拖拽查看。同時也會在爬蟲文件中以綠色的字體進行顯示爬蟲的結(jié)果,很漂亮。

Python學習教程:關(guān)于Scrapy爬蟲項目運行和調(diào)試的小技巧-第一講

如果想退出或者停止該調(diào)試,則點擊Pycharm上方選項卡的Run,然后點擊“Stop ‘main’”即可,如下圖所示。

Python學習教程:關(guān)于Scrapy爬蟲項目運行和調(diào)試的小技巧-第一講

之后該爬蟲程序就會退出調(diào)試,恢復正常的Pycharm界面,如下圖所示。

Python學習教程:關(guān)于Scrapy爬蟲項目運行和調(diào)試的小技巧-第一講

關(guān)于Scrapy爬蟲項目運行和調(diào)試小技巧先分享到這里,接下來會繼續(xù)分享Scrapy爬蟲項目中更為實用的兩種調(diào)試方法,大家可以期待一下哦!


向AI問一下細節(jié)

免責聲明:本站發(fā)布的內(nèi)容(圖片、視頻和文字)以原創(chuàng)、轉(zhuǎn)載和分享為主,文章觀點不代表本網(wǎng)站立場,如果涉及侵權(quán)請聯(lián)系站長郵箱:is@yisu.com進行舉報,并提供相關(guān)證據(jù),一經(jīng)查實,將立刻刪除涉嫌侵權(quán)內(nèi)容。

AI