Python為什麽被稱為爬行動物?
Python作為壹種編程語言,是純自由軟件,因其簡潔明了的語法和強制使用空格進行句子縮進而深受程序員的喜愛。用不同的編程語言完成壹個任務:C語言需要寫1000行代碼;Java要寫100行;Python只需要寫20行代碼。如果用Python來完成編程任務,編寫的代碼量少,代碼簡潔易讀,壹個團隊在開發的時候效率會更高,開發效率會讓工作更高效。
Python非常適合開發壹種網絡爬蟲的編程語言。與其他靜態編程語言相比,Python具有更簡單的抓取web文檔的接口。與其他動態腳本語言相比,Python的urllib2包提供了相對完整的訪問web文檔的API。Python中有優秀的第三方包,可以高效抓取網頁,用非常短的代碼完成網頁的標簽過濾功能。
Python crawler的架構包括:
爬蟲框架
1.url管理器:管理待抓取的url集合和已抓取的url集合,並將待抓取的URL發送給網頁下載器;
2.網頁下載器:抓取url對應的網頁,存儲為字符串,發送給網頁解析器;
3.網頁解析器:解析出有價值的數據,存儲起來,補充url給URL管理器。
Python的工作流程是:
Python crawler通過URL manager判斷是否有要爬取的URL,如果有要爬取的URL,通過scheduler發送給downloader,下載URL內容,通過scheduler發送給parser,解析URL內容,通過scheduler將值數據和新的URL列表發送給application,輸出值信息。
Python是非常適合開發網絡爬蟲的編程語言,提供了urllib、re、json、pyquery等模塊。同時還有很多成型的框架,比如Scrapy框架,PySpider爬蟲系統。代碼非常簡單方便,是初學者學習網絡爬蟲的首選編程語言。爬蟲是指網絡資源的抓取。由於Python的腳本特性,Python易於配置,處理字符靈活,而且Python有豐富的網絡爬行模塊,兩者經常聯系在壹起,所以Python語言更適合初學者學習。