Python常用庫 Requests網路請求

2022-03-08 10:02:22 字數 2127 閱讀 1113

python 應用場景非常廣泛,大資料、爬蟲、人工智慧等,常見的熱門領域都離不開這個傢伙,今天又來說說 python 常用的庫之一「requests」,只要是與網路相關的的操作,都離不開這個庫。restful 常見的增刪改查「crud」都用這個可以實現。

基礎的操作有,請求乙個頁面,獲取「get」網頁內容。

>>

> r = requests.get(

'')# get

>>

> r

200]

>

# http 響應200

>>

> r.headers[

'content-type'

]# 網頁型別

'text/html'

>>

> r.encoding # 正在使用的編碼

'iso-

8859

-1

#基礎用法

上面這個是最簡單的,不需要上面認證、伺服器認證**、請求內容、定製頭等,比如帶上請求資料,把需要的資料封裝為字典,然後用 params 帶入即可。

# 在瀏覽器訪問的**是

# /get?key2=value2&key1=value1

# 用 requests 來訪問

>>

> payload =

>>

> r = requests.get(

'/get'

, params=payload)

對返回的內容還可以解析,有乙個內建的 json 解碼器,不過是針對乙個返回的是乙個字典,如果是多個字典的話,有報錯異常提示。

>>

>

import requests

>>

> r = requests.get(

'/events'

)>>

> r.json()[

>>

> r = requests.get(url, headers=headers)

對於 post 的請求,則需要帶上 data

>>

> payload =

>>

> r = requests.post(

"/post"

, data=payload)

在爬取資料的時候,有時候會遇到**是用 cookies 來訪問的,這個時候需要認證,獲取到 cookies,然後帶上引數 cookies 即可訪問。

>>

> url =

'/cookies'

>>

> cookies =

dict

(cookies_are=

'working'

)>>

> r = requests.get(url, cookies=cookies)

還有一些**反「爬」機制的,會加上多個路徑的 cookies,就可以用到

> r = requests.get(url, cookies=jar)應當指出的是,呼叫的成功 r.json() 並不能 表明響應成功。某些伺服器可能會在失敗的響應中返回 json 物件(例如,http 500的錯誤詳細資訊)。這樣的json將被解碼並返回。要檢查請求是否成功,請使用 r.raise_for_status() 或檢查r.status_code 您的期望。

Python爬蟲 HTTP協議 Requests庫

http協議 http hypertext transfer protocol 即超文字傳輸協議。url是通過http協議訪問資源的internet路徑,乙個url對應乙個資料資源。http協議對資源的操作 requests庫提供了http所有的基本請求方式。官方介紹 requests庫的6個主要方...

python 爬蟲系列02 認識 requests

本系列所有文章基於 python3.5.2 requests 是基於 urllib 的三方模組,相比於 uillib,操作更簡潔,功能更強大,而且支援 python3 getimport requests r requests.get url print r.status code print r....

python小白學習記錄 爬蟲requests篇

一 引用庫 import requests 二 請求訪問url,網頁相應 res requests.get 網頁位址 三 表明返回內容 目前返回的response物件有四種屬性 status code 檢查請求是否成功 content 將資料轉換為二進位制資料 text 將資料轉換為字串型資料 en...