用 python 或者curl 抓取web資料時

來源:互聯網
上載者:User

標籤:

  今天接到一個web的同事求助,他本來通過java抓取一個web頁面的內容,但是發現抓取得都是些亂碼,然後又嘗試用 python的urllib來擷取,依然是亂碼,不過在瀏覽器訪問卻是正常的json格式資料。

 

  首先,我先用curl擷取了下這個web,發現確實是一些不可見的字元,把它儲存下來。

  再使用瀏覽器擷取下這個web內容,對比下發現位元組數是不一樣的,說明不是編碼顯示的問題。

  這個時候我考慮可能是http協議參數的問題,於是使用wireshark捕獲用瀏覽器的請求,用tcpdump捕獲了curl的請求,通過對比http get請求參數發現,在curl訪問的時候有一項Content-Encoding:gzip,推斷難道是使用gzip壓縮了?

  使用gzip命令把剛才通過curl命令擷取的web資料解壓下... 果然是這樣...問題解決。

   對web不是很瞭解的我,覺得還挺有意思的...

用 python 或者curl 抓取web資料時

相關文章

聯繫我們

該頁面正文內容均來源於網絡整理,並不代表阿里雲官方的觀點,該頁面所提到的產品和服務也與阿里云無關,如果該頁面內容對您造成了困擾,歡迎寫郵件給我們,收到郵件我們將在5個工作日內處理。

如果您發現本社區中有涉嫌抄襲的內容,歡迎發送郵件至: info-contact@alibabacloud.com 進行舉報並提供相關證據,工作人員會在 5 個工作天內聯絡您,一經查實,本站將立刻刪除涉嫌侵權內容。

A Free Trial That Lets You Build Big!

Start building with 50+ products and up to 12 months usage for Elastic Compute Service

  • Sales Support

    1 on 1 presale consultation

  • After-Sales Support

    24/7 Technical Support 6 Free Tickets per Quarter Faster Response

  • Alibaba Cloud offers highly flexible support services tailored to meet your exact needs.