[讀后筆記](méi) python網(wǎng)路爬蟲(chóng)實(shí)戰 (李松濤)
優(yōu)采云 發(fā)布時(shí)間: 2020-05-12 08:03
用了大約一個(gè)晚上的時(shí)間,就把這本書(shū)看完了。
前面4章是基礎的python知識,有基礎的朋友可以略過(guò)。
scrapy爬蟲(chóng)部份,用了實(shí)例給你們說(shuō)明scrapy的用法網(wǎng)絡(luò )爬蟲(chóng)實(shí)例,不過(guò)若果之前沒(méi)用過(guò)scrapy的話(huà),需要漸漸上機敲擊代碼。
其實(shí)書(shū)中的事例都是很簡(jiǎn)單的事例,基本沒(méi)哪些反爬的限制,書(shū)中一句話(huà)說(shuō)的十分贊成,用scrapy寫(xiě)爬蟲(chóng),就是做填空題,而用urllib2寫(xiě)爬蟲(chóng),就是習作題,可以自由發(fā)揮。
書(shū)中沒(méi)有用更為便捷的requests庫。 內容搜索用的最多的是beatifulsoup, 對于xpah或則lxml介紹的比較少。 因為scrapy自帶的response就是可以直接用xpath,更為便捷。
對于scrapy的中間和pipeline的使用了一個(gè)事例,也是比較簡(jiǎn)單的反例。
書(shū)中沒(méi)有對驗證碼,分布式等流行的反爬進(jìn)行講解,應該適宜爬蟲(chóng)入門(mén)的朋友去看吧。
書(shū)中一點(diǎn)挺好的就是代碼都十分規范,而且雖然是寫(xiě)習作的使用urllib2,也有意模仿scrapy的框架去寫(xiě), 需要抓取的數據 獨立一個(gè)類(lèi),類(lèi)似于scrapy的item,數據處理用的也是叫pipleline的方式。
這樣寫(xiě)的益處就是, 每個(gè)模塊的功能都一目了然,看完第一個(gè)反例的類(lèi)和函數定義,后面的事例都是大同小異,可以推動(dòng)讀者的閱讀速率,非常贊。(這一點(diǎn)之后自己要學(xué)習,增加代碼的可復用性)
很多頁(yè)面url如今早已過(guò)期了,再次運行作者的源碼會(huì )返回好多404的結果。
失效的項目:
金逸影城
天氣預報
獲取代理:
本書(shū)的一些錯誤的地方:
1. 獲取金逸影廳的spider中,所有關(guān)于movie的拼寫(xiě)都拼錯為moive了。這個(gè)屬于德語(yǔ)錯誤。
2. 在testProxy.py 代碼中網(wǎng)絡(luò )爬蟲(chóng)實(shí)例, 由于在同一個(gè)類(lèi)中,一直在形成線(xiàn)程,最后造成線(xiàn)程過(guò)多,不能再形成線(xiàn)程。程序會(huì )中途退出。
File "C:\Python27\lib\threading.py", line 736, in start<br />
_start_new_thread(self.__bootstrap, ())<br />
thread.error: can't start new thread
可以更改成獨立函數的方式,而不是類(lèi)函數。
待續。



