抓取網頁的gzip deflate

2021-07-08 21:11:39 字數 1858 閱讀 3123

現在的網頁普遍支援gzip壓縮,這往往可以解決大量傳輸時間,以豆瓣的主頁為例,未壓縮版本327k,壓縮了以後61k,為原來的1/5。這就意味著抓取速度會快5倍。

然而python的urllib/urllib2預設都不支援壓縮,要返回壓縮格式,必須在request的header裡面寫明』accept-encoding』,然後讀取response後更要檢查header檢視是否有』content-encoding』一項來判斷是否需要解碼,很繁瑣瑣碎。如何讓urllib2自動支援gzip, defalte呢?

#直接用opener開啟網頁,如果伺服器支援gzip/defalte則自動解壓縮

規劃網頁的抓取

適當地規劃網頁的抓取,限制單位時間內對乙個 抓取網頁的數量 例如每天不超過2萬個,或者至少每隔30秒才對同乙個 發出下乙個網頁請求,等等 是大規模搜尋引擎必須要認真對待的問題。總之,搜尋引擎需要和 和睦相處 它們是相互依存的。可以考慮乙個 從主頁開始向下,按照鏈結的深度將網頁組織成一層層的,上層中的...

網頁內容抓取

之前採用xpath和正規表示式對網頁內容進行抓取,發現在有的地方不如人意,就採用了htmlparser對頁面進行解析,抓取需要的東西。htmlparser有點不好的地方在於不能對starttag和endtag進行匹配。採用了兩種方法進行抓取。第一種,抓取成對的tag之間的內容,採用了queue.qu...

php抓取網頁

用php抓取頁面的內容在實際的開發當中是非常有用的,如作乙個簡單的內容採集器,提取網頁中的部分內容等等,抓取到的內容在通過正規表示式做一下過濾就得到了你想要的內容,以下就是幾種常用的用php抓取網頁中的內容的方法。1.file get contents php url contents file g...