1. 程式人生 > >python網路爬蟲一

python網路爬蟲一

大概框架

Request庫的安裝


  • 爬取網頁最好用的第三方庫
  • 直接安裝即可(用於OS X)
    pip3 install requests
  • request庫的常用方法:

  • request庫一共有七個常用方法。一個基本方法是request方法,其他的方法都是呼叫request方法實現的。

get方法

  • 獲取網頁最簡單的方法就是get方法
    r = requests.get(url)
  • 通過get方法+url獲得一個向伺服器請求資源的Request物件。注意python是嚴格區分大小寫的,這個Request和我們說的request是不同的。
  • request.get()返回一個Response
    物件,就是我們的變數r。

Response物件

看一段程式碼:

Response物件包含了伺服器返回的所有資訊。

  • Response物件的屬性:

  • 一般的解析流程:

一個例子

  • 狀態編碼為200,說明返回資訊成功。
  • 但是我們檢視r的text屬性時,卻發現了亂碼,於是我們去檢查r的編碼方式:

  • 用r.apparent_encoding的utf-8編碼替換r.encoding的ISO編碼方式可以正常顯示中文資訊。這是為什麼呢?

  • r.encoding是從header中提取charset欄位的編碼方式,但是並非所有網站都有charset欄位,如果沒有charset欄位時預設返回ISO-8859-1型別,而這個型別是不能解析中文的。
  • r.apparent_encoding是根據http的內容部分實實在在分析內容的可能編碼型別,更加準確!