『壹』 【Python數據採集系列】一文解讀requests.get()和requests.post()的區別
這是我的第228篇原創文章。
一、引言
requests.get():該方法用於發送 HTTP GET 請求,主要用於獲取頁面資源。requests.post():該方法用於發送 HTTP POST 請求,主要用於向伺服器傳遞數據,如模擬用戶登錄、提交表單數據、上傳文件等。
二、response = requests.get()
2.1 參數:
查詢參數:以字典形式封裝,requests 會自動將其拼接到介面請求地址中。
headers 請求頭部信息:在非API請求中,請求頭不可或缺,通常包括 User-Agent、Accept、Cookie 等信息。在 API 請求中,設置 Authorization 信息。如果本地無法訪問 URL,需要科學上網,此時需要設置代理(前提是本地已搭建梯子,埠號為 21881,需自行查詢)。
三、response = requests.post()
3.1 參數解析:
POST 請求參數使用 data 或 json。具體取決於請求頭中的 content-type 類型(參照介面文檔或抓包)。如果 content-type 為 application/json,則使用 json 參數。如果為 application/x-www-form-urlencoded,則使用 data 參數。如果請求類型為 application/json,想使用 data 傳參,需將字典類型數據轉換為 json 字元串。
3.2 案例:利用 gitee 的 API 創建 pull request
url:
設置 headers:
設置 data:
發送請求:
作者簡介:在讀研期間發表 6 篇 SCI 數據演算法相關論文,目前在某研究院從事數據演算法相關研究工作。結合自身科研實踐經歷,不定期分享 Python、數據分析、特徵工程、機器學習、深度學習、人工智慧等基礎知識與案例。致力於原創,以最簡單的方式理解和學習,關注公眾號:數據雜壇,學習更多內容。
原文鏈接:【Python數據採集系列】一文解讀 requests.get() 和 requests.post() 的區別