溫馨提示×

溫馨提示×

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

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

python對比其他開發(fā)工具寫爬蟲有哪些區(qū)別

發(fā)布時間:2020-11-21 09:50:20 來源:億速云 閱讀:287 作者:小新 欄目:編程語言

這篇文章給大家分享的是有關(guān)python對比其他開發(fā)工具寫爬蟲有哪些區(qū)別的內(nèi)容。小編覺得挺實用的,因此分享給大家做個參考。一起跟隨小編過來看看吧。

只要從PHP, Python, Node.js 幾個方向討論

  • 1.對頁面的解析能力

  • 2.對數(shù)據(jù)庫的操作能力(mysql

  • 3.爬取效率

  • 4.代碼量

1. 對頁面的解析能力

關(guān)于這一條,基本上就是靠特定語言的第三方包來完成網(wǎng)頁的解析。如果要從零開始自己實現(xiàn)一個HTML解析器,難度和時間上的阻礙都是很大的。而對于復(fù)雜的基于大量Javascript運算生成的網(wǎng)頁或者請求,則可以通過調(diào)度瀏覽器環(huán)境來完成。這一條上,Python是絕對勝任的。

2. 對數(shù)據(jù)庫的操作能力(mysql)

對數(shù)據(jù)庫的操作能力上,Python有官方及第三方的連接庫。另外,對于爬蟲抓取的數(shù)據(jù),存儲在NoSQL型數(shù)據(jù)庫個人認(rèn)為更加合適。

3. 爬取效率

確實腳本語言的運算速度不高,但是相對于特定網(wǎng)站反爬蟲機(jī)制強(qiáng)度以及網(wǎng)絡(luò)IO的速度,這幾門語言的速度詫異都可以忽略不計,而在于開發(fā)者的水平。如果利用好發(fā)送網(wǎng)絡(luò)請求的等待時間處理另外的事情(多線程、多進(jìn)程或者協(xié)程),那么各語言效率上是不成問題的。

4. 代碼量

這一點上Python是占有優(yōu)勢的,眾所周知Python代碼簡潔著稱,只要開發(fā)者水平到位,Python代碼可以像偽代碼一樣簡潔易懂,且代碼量較低。

推薦語言時說明所需類庫或者框架,謝謝。比如:python+MySQLdb+urllib2+rePython: requests + MongoDB + BeautifulSoup

ps:其實不太喜歡用python(可能是在windows平臺的原因,需要各種轉(zhuǎn)字符編碼,而且多線程貌似很雞肋。)

由于GIL的存在,Python的多線程確實沒有利用到多核的優(yōu)勢,對此你可以使用多進(jìn)程解決。但是對于爬蟲,更多的時間在于網(wǎng)絡(luò)IO的等待上,所以直接使用協(xié)程即可很好地提升抓取速度。

感謝各位的閱讀!關(guān)于python對比其他開發(fā)工具寫爬蟲有哪些區(qū)別就分享到這里了,希望以上內(nèi)容可以對大家有一定的幫助,讓大家可以學(xué)到更多知識。如果覺得文章不錯,可以把它分享出去讓更多的人看到吧!

向AI問一下細(xì)節(jié)

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

AI