python爬蟲學習過程:
阿新 • • 發佈:2017-11-02
python爬蟲 spider 學習路線
1.掌握python的基本語法知識
2.學會如何抓取HTML頁面:
HTTP請求的處理:urlib、urlib2 及requests(reqests對urllib和urllib2進行了封裝
,功能相當於二者的和)
處理後的請求可以模擬瀏覽器發送的請求,獲取瀏覽器的響應
3.解析服務器響應的內容:
re、xpath、BeautifulSoup4(bs4)、jsonpath、等
給我們需要的數據定義一個匹配規則,符合這個規則的數據將會被匹配
4.如何采集動態HTML、驗證碼的處理:
通用的動態頁面采集:Selenium + PhantomJS(模仿無界面瀏覽器,加載js等頁面效果)
機器圖像識別系統:Tesseract(谷歌維護的一個庫)可以處理簡單的驗證碼
專業的打碼平臺(後臺有真人進行打碼)可以處理復雜的驗證碼
5.Scrapy框架:(Scrapy,Pyspider):
高定制性及高性能(異步網絡框架 twisted),所以下載數據速度非常快,提供了數據存儲
、數據下載和提取規則等組件
6.分布式策略(功能強大,但是成本高):
scrapy-redis、以Redis數據庫為核心的一套組件,讓scrapy框架支持分布式的功能,主
主要在redis裏做請求指紋去重、請求分配、數據臨時存儲
7.爬蟲、反爬蟲、反反爬蟲 之間的鬥爭
User-Agent、代理、驗證碼、動態數據加載、加密數據(加密方法最終隱藏在網站中的
某個JS腳本中)
關於爬蟲和反爬蟲之間的鬥爭,最終勝利的一定是我們的爬蟲,因為用戶可以看到的數
據,最後都可以爬到
python爬蟲學習過程: