python除了用requests庫,還能用什麼編寫爬蟲?
selenium
其實requests就基本足夠了, 配合ExecJS基本能解決大部分問題.
少數問題可以通過selenium解決.
爬蟲關鍵的是數據整合與抽象, 用什麼Web庫是底層的工具選擇.
我本人就寫了一個IWebAT介面, 用selenium和requests分別實現, 用起來很爽.
requests庫是一個http客戶端,連接伺服器請求數據,一般會與beatifulsoup,xpath,正則等解析工具配合使用,可以應付一般小的爬蟲項目。
除了requests,其他可以用的還有一些別人寫好的框架,如scrapy,pyspider等。框架不僅僅是請求,還包括調度,負責數據的從爬取到儲存的所有任務工作。開發人員一般只要寫解析部分和自定義的中間件和配置就差不多了,可以應付一些重大型的爬蟲項目。
還有selenium,它使用webdriver驅動瀏覽器進行自動化的操作,效率很低,一般能不用盡量不用。但是如果網頁非同步js很難模擬,使用selenium也一個回去數據的方法。
學習爬蟲可以關注我的專欄Python數據分析師
或者公眾號:Python數據科學
aiohttp,基於asyncio的非同步HTTP框架,並發效率不錯,我在這之上封裝了一個請求池
https://github.com/DKChain/aiorequestpool
selenium,scrapy框架都可以的,而且爬取動態網頁的話,selenium非常好用
反正大多數都能用這個解決
scrapy牛逼
urllib
requests http庫 官網: Requests: HTTP for Humans
scrapy 框架 官網:A Fast and Powerful Scraping and Web Crawling Framework
pyspider 框架 官網:pyspider
通常寫爬蟲 requests + Beautiful Soup 就能滿足大多數場景了
必要的時候可能會上 phantomJS
推薦閱讀: