大數據時代,海量數據的獲取離不開爬蟲技術。再加上代理IP的幫助,爬蟲技術的應用也就越來越廣泛。許多企業和個人開始學習爬蟲技術,而學習爬蟲技術首先要掌握爬蟲框架。
Python爬蟲架構主要由五個部分組成,分別是調度器、URL管理器、網頁下載器、網頁解析器、應用程序(爬取的有價值數據)。
調度器:相當於一臺電腦的CPU,主要負責調度URL管理器、下載器、解析器之間的協調工作。
URL管理器:包括待爬取的URL地址和已爬取的URL地址,防止重複抓取URL和循環抓取URL,實現URL管理器主要用三種方式,通過內存、數據庫、緩存數據庫來實現。
網頁下載器:通過傳入一個URL地址來下載網頁,將網頁轉換成一個字符串,網頁下載器有urllib2(Python官方基礎模塊)包括需要登錄、代理、和cookie,requests(第三方包)
網頁解析器:將一個網頁字符串進行解析,可以按照我們的要求來提取出我們有用的信息,也可以根據DOM樹的解析方式來解析。網頁解析器有正則表達式(直觀,將網頁轉成字符串通過模糊匹配的方式來提取有價值的信息,當文檔比較複雜的時候,該方法提取數據的時候就會非常的困難)、html.parser(Python自帶的)、beautifulsoup(第三方插件,可以使用Python自帶的html.parser進行解析,也可以使用lxml進行解析,相對於其他幾種來說要強大一些)、lxml(第三方插件,可以解析xml和HTML),html.parser和beautifulsoup以及lxml都是以DOM樹的方式進行解析的。
應用程序:就是從網頁中提取的有用數據組成的一個應用。
下面用一個圖來解釋一下調度器是如何協調工作的
瞭解了Python爬蟲架構可以幫助我們更好的爬取數據,不過頻繁操作爬取可能會導致IP受限哦,所以得使用代理IP軟件哦~
入門|Python爬蟲架構介紹
發表評論
所有評論
還沒有人評論,想成為第一個評論的人麼? 請在上方評論欄輸入並且點擊發布.
相關文章
我是怎麼從 Excel 表哥轉到 Python 的
蘇克1900
2019-02-24 14:16:50
Python正則表達式
蒼簡
2019-02-24 13:54:12
23個Python爬蟲開源項目代碼:爬取微信、淘寶、豆瓣、知乎、微博等
蒼簡
2019-02-24 13:54:12
5/20python之列表
王悟冥
2019-02-24 13:47:51
Mac OS 上安裝PyCharm專業版並破解註冊
Hansion
2019-02-24 13:12:51
python萌新:從零基礎入門到放棄
編程黑格爾
2019-02-24 13:06:36
519. leetcode題目講解(Python):隨機翻轉矩陣(Random Flip Matrix )
夏山聞汐
2019-02-24 12:59:06
《Flask Web開發:基於Python的Web應用開發實戰》筆記二、
mbb97
2019-02-23 13:43:04
ftrack Python API
wx5c6a499ea4601
2019-02-23 13:40:57
Python帶權重隨機數的簡單實現
vincent_tech
2019-02-23 13:37:42
python學習(一)
kaixinhai2010
2019-02-23 13:36:05
Python中修改Pk10平臺出租字符串的幾種方法
wojiuyong
2019-02-23 13:25:22
Python項目案例介紹,炫酷飛機大戰,內附源碼文件領取
扒皮狼
2019-02-23 12:53:12
Python 之 socket網絡模塊簡單應用
wx592bc92b285c7
2019-02-23 12:50:09
使用python寫糗事百科的爬蟲
qiufozhe
2019-02-23 13:37:36