:python做爬蟲具有非常大的優(yōu)勢盆色,原生的urllib
庫提供了大量的API已方便爬蟲開發(fā),但是由于代碼效率還有其他的第三方庫,所以這里用的是 requests
模塊,這次咱們初探一下机久。
1.requests初體驗
首先安裝,由于python已經安裝了pip
赔嚎,可以方便下載第三方模塊膘盖,所以直接執(zhí)行命令即可,如果沒有安裝參考這篇文章尤误,執(zhí)行命令
sudo pip install requests
2. 簡單訪問網頁
1.這里咱們需要使用requests
庫進行訪問網頁了侠畔,首先要引入
import requests
- 建立請求
requests
中的訪問API很全面,我們可以以下面的方式建立請求
r = requests.get("http://www.baidu.com")
r = requests.put("http://ww.baidu.org/put")
r = requests.delete("http://ww.baidu.org/delete")
r = requests.head("http://ww.baidu.org/get")
r = requests.options("http://ww.baidu.org/get")
r = requests.post('https"http://ww.baidu.com')
// python會返回一個對象损晤,并且賦值給r
- 查看是否請求成功
由于我們需要知道是否請求網頁成功软棺,所以需要查看對方服務器返回的code字段,所以我們可以查看一下
r.status_code
// 200
此時如果r.status_code 為200則代表請求成功尤勋。
- 查看返回的文本信息
r.text
r.text
就是網頁的內容了喘落,當然咱們可以打印一下。
- 將網頁內容轉碼最冰,指定為咱們需要的編碼
r.encoding = 'utf-8'
這時候改變了編碼瘦棋,每當你訪問 r.text ,Request 都將會使用 r.encoding 的新值暖哨。你可能希望在使用特殊邏輯計算出文本的編碼的情況下來修改編碼赌朋。比如 HTTP 和 XML 自身可以指定編碼。這樣的話,你應該使用 r.content 來找到編碼沛慢,然后設置 r.encoding 為相應的編碼服球。這樣就能使用正確的編碼解析 r.text 了。
- 打印一下
r.text
這時候打印出來的就是utf-8
編碼的網頁了颠焦,咱們就拿到這些網頁進行抓取內容吧斩熊!