關(guān)于Scrapy爬蟲(chóng)項(xiàng)目運(yùn)行和調(diào)試的小技巧(上篇)
掃除運(yùn)行Scrapy爬蟲(chóng)程序的bug之后,現(xiàn)在便可以開(kāi)始進(jìn)行編寫(xiě)爬蟲(chóng)邏輯了。在正式開(kāi)始爬蟲(chóng)編寫(xiě)之前,在這里介紹四種小技巧,可以方便我們操縱和調(diào)試爬蟲(chóng)。
一、建立main.py文件,直接在Pycharm下進(jìn)行調(diào)試
很多時(shí)候我們?cè)谑褂肧crapy爬蟲(chóng)框架的時(shí)候,如果想運(yùn)行Scrapy爬蟲(chóng)項(xiàng)目的話,一般都會(huì)想著去命令行中直接執(zhí)行命令“scrapy crawl crawler_name”,其中crawler_name指的是爬蟲(chóng)的名字,在一開(kāi)始創(chuàng)建Scrapy爬蟲(chóng)模板的時(shí)候就指定了的,而且在該爬蟲(chóng)項(xiàng)目中具有唯一性。但是每次跑到命令行下去執(zhí)行,看交互的結(jié)果,有時(shí)候并不是很清晰,所以這里介紹一種方法,可以幫助大家提高開(kāi)發(fā)效率,尤其是調(diào)試的時(shí)候更是顯得方便。
在與爬蟲(chóng)項(xiàng)目的scrapy.cfg文件同級(jí)目錄下建立一個(gè)main.py文件,用于控制整個(gè)爬蟲(chóng)項(xiàng)目的執(zhí)行。
在該文件夾中寫(xiě)入的代碼見(jiàn)下圖。其中execute函數(shù)是內(nèi)嵌在scrapy中的,調(diào)用這個(gè)函數(shù)可以直接調(diào)用該Scrapy工程項(xiàng)目的爬蟲(chóng)腳本,這個(gè)函數(shù)的執(zhí)行需要在爬蟲(chóng)項(xiàng)目的父目錄下進(jìn)行。而第7行代碼的意思就是獲取當(dāng)前py文件的父目錄,省去我們直接復(fù)制路徑的精力和時(shí)間,同時(shí)也方便我們將該項(xiàng)目放到其他的平臺(tái)上去運(yùn)行,不會(huì)報(bào)路徑的錯(cuò)誤。execute函數(shù)里邊的參數(shù)其實(shí)就是將Scrapy爬蟲(chóng)執(zhí)行命令拆分,然后分別以一個(gè)字符的方式放到了一個(gè)數(shù)組中。
之后我們直接運(yùn)行這個(gè)main.py文件便可以調(diào)用Scrapy爬蟲(chóng)程序了。

發(fā)表評(píng)論
請(qǐng)輸入評(píng)論內(nèi)容...
請(qǐng)輸入評(píng)論/評(píng)論長(zhǎng)度6~500個(gè)字
最新活動(dòng)更多
-
8月5日立即報(bào)名>> 【在線會(huì)議】CAE優(yōu)化設(shè)計(jì):醫(yī)療器械設(shè)計(jì)的應(yīng)用案例與方案解析
-
8月14日立即報(bào)名>> 【在線研討會(huì)】解析安森美(onsemi)高精度與超低功耗CGM系統(tǒng)解決方案
-
精彩回顧立即查看>> 《2024智能制造產(chǎn)業(yè)高端化、智能化、綠色化發(fā)展藍(lán)皮書(shū)》
-
精彩回顧立即查看>> 7月30日- 8月1日 2025全數(shù)會(huì)工業(yè)芯片與傳感儀表展
-
精彩回顧立即查看>> 全數(shù)會(huì)2025(第六屆)機(jī)器人及智能工廠展
-
精彩回顧立即查看>> OFweek 2025 具身機(jī)器人動(dòng)力電池技術(shù)應(yīng)用大會(huì)
推薦專題
- 1 AI產(chǎn)業(yè)的新高度!英偉達(dá)成為全球首家市值破4萬(wàn)億美元的公司
- 2 傳魏建軍與賈躍亭合作,長(zhǎng)城汽車出海美國(guó)
- 3 一文讀懂:到底什么是 “具身智能” ?
- 4 黃仁勛:與雷軍長(zhǎng)期合作,共探AI智駕
- 5 具身智能泡沫爭(zhēng)議下,華映資本尋找「穿越周期者」
- 6 中國(guó)平安們欲靠AI守“陣地”
- 7 官宣:智元機(jī)器人借殼上市,A股人形機(jī)器人第一股!
- 8 華為讓渡“三界”銷售主導(dǎo)權(quán),智界高管:終于能全力奔跑了
- 9 借仿生手實(shí)現(xiàn)突圍,國(guó)產(chǎn)靈巧手破局“不可能三角”
- 10 DeepSeek R2加持,中國(guó)AI與芯片產(chǎn)業(yè)迎來(lái)新一輪協(xié)同進(jìn)化