python為什么叫爬蟲(chóng)
作為一門(mén)編程語(yǔ)言而言,Python是純粹的自由軟件,以簡(jiǎn)潔清晰的語(yǔ)法和強(qiáng)制使用空白符進(jìn)行語(yǔ)句縮進(jìn)的特點(diǎn)從而深受程序員的喜愛(ài)。舉一個(gè)例子:完成一個(gè)任務(wù)的話,c語(yǔ)言一共要寫(xiě)1000行代碼,java要寫(xiě)100行,而python則只需要寫(xiě)20行的代碼。使用python來(lái)完成編程任務(wù)的話編寫(xiě)的代碼量更少,代碼簡(jiǎn)潔簡(jiǎn)短可讀性更強(qiáng),一個(gè)團(tuán)隊(duì)進(jìn)行開(kāi)發(fā)的時(shí)候讀別人的代碼會(huì)更快,開(kāi)發(fā)效率會(huì)更高,使工作變得更加高效。
這是一門(mén)非常適合開(kāi)發(fā)網(wǎng)絡(luò)爬蟲(chóng)的編程語(yǔ)言,而且相比于其他靜態(tài)編程語(yǔ)言,Python抓取網(wǎng)頁(yè)文檔的接口更簡(jiǎn)潔;相比于其他動(dòng)態(tài)腳本語(yǔ)言,Python的urllib2包提供了較為完整的訪問(wèn)網(wǎng)頁(yè)文檔的API。此外,python中有優(yōu)秀的第三方包可以高效實(shí)現(xiàn)網(wǎng)頁(yè)抓取,并可用極短的代碼完成網(wǎng)頁(yè)的標(biāo)簽過(guò)濾功能。
python爬蟲(chóng)的構(gòu)架組成如下圖:
1、URL管理器:管理待爬取的url集合和已爬取的url集合,傳送待爬取的url給網(wǎng)頁(yè)下載器;
2、網(wǎng)頁(yè)下載器:爬取url對(duì)應(yīng)的網(wǎng)頁(yè),存儲(chǔ)成字符串,傳送給網(wǎng)頁(yè)解析器;
3、網(wǎng)頁(yè)解析器:解析出有價(jià)值的數(shù)據(jù),存儲(chǔ)下來(lái),同時(shí)補(bǔ)充url到URL管理器。
而python的工作流程則如下圖:
(Python爬蟲(chóng)通過(guò)URL管理器,判斷是否有待爬URL,如果有待爬URL,通過(guò)調(diào)度器進(jìn)行傳遞給下載器,下載URL內(nèi)容,并通過(guò)調(diào)度器傳送給解析器,解析URL內(nèi)容,并將價(jià)值數(shù)據(jù)和新URL列表通過(guò)調(diào)度器傳遞給應(yīng)用程序,并輸出價(jià)值信息的過(guò)程。)
Python是一門(mén)非常適合開(kāi)發(fā)網(wǎng)絡(luò)爬蟲(chóng)的編程語(yǔ)言,提供了如urllib、re、json、pyquery等模塊,同時(shí)又有很多成型框架,如Scrapy框架、PySpider爬蟲(chóng)系統(tǒng)等,本身又是十分的簡(jiǎn)潔方便所以是網(wǎng)絡(luò)爬蟲(chóng)首選編程語(yǔ)言!
-
python
+關(guān)注
關(guān)注
56文章
4797瀏覽量
84688 -
爬蟲(chóng)
+關(guān)注
關(guān)注
0文章
82瀏覽量
6880
發(fā)布評(píng)論請(qǐng)先 登錄
相關(guān)推薦
評(píng)論