python requests的簡單用法

2021-09-12 02:32:38 字數 3224 閱讀 5749

做乙個總結~以便以後參考

本文參考:新增鏈結描述

import requests

get請求

eg:

r = requests.get('')

print(r.url)

傳參eg:

load = 

r = requests.get('',params = load)

print(r.url)

用列表傳遞引數

eg:

load = 

r = requests.get('',params = load)

print(r.url)

r.raw返回原始socket respons,需要加引數stream=true

傳遞headers

eg:

url = ''

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

print(r.url)

傳遞cookies

url = '/cookies'

r = requests.get(url,cookies=dict(cookies_are='working'))

#r.text 返回headers中的編碼解析的結果,可以通過r.encoding = 'gbk'來變更解碼方式

json響應內容

import requests

r = requests.get('')

print(r.json())

傳遞表單
r = requests.post('/post',data=)

post提交檔案

先製作乙個text檔案,名為『test.txt』,內容是『this is a file』。requests使得上傳多部分編碼檔案變得很簡單:

url = '/post'

files =

r = requests.post(url, files=files)

print(r.text)

post提交表單

傳遞乙個字典給 data 引數就可以了。資料字典在發出請求時會自動編碼為表單形式:

payload = 

r = requests.post("/post", data=payload)

響應狀態碼

使用r.status_code返回響應的狀態碼

r = requests.get("")

print(r.status_code)

為使用方便,requests還附帶了乙個內建的狀態碼查詢物件:

r = requests.get("")

print(r.status_code)

print(r.status_code == requests.codes.ok)

異常

如果傳送了乙個失敗請求(非200響應),我們可以通過 response.raise_for_status()來丟擲異常:

如果返回碼是200,則不會丟擲異常,即:

讀取頭部資訊

r = requests.get("")

print(r.headers)

print(r.headers['content-type'])

重定向與請求歷史

預設情況下,除了 head, requests會自動處理所有重定向。

可以使用響應物件的 history 方法來追蹤重定向。

r = requests.get('')

print(r.url)

print(r.status_code)

print(r.history)

#如果你使用的是get, options, post, put, patch 或者 delete,,那麼你可以通過 allow_redirects 引數禁用重定向處理:

r = requests.get('', allow_redirects=false)

print(r.status_code)

r.history

#如果使用的是head,你也可以啟用重定向:

Python requests的SSL證書驗證

對於https,預設情況下,啟用ssl驗證,如果無法驗證ssl證書會導致 requests.exceptions.sslerror bad handshake error ssl routines tls process server certificate certificate verify f...

python requests庫的使用

如果auth使用不通過的話,可以再header加入cookie header data request請求 response requests.request get url,params params,headers headers,auth auth session 請求 session req...

Python Requests 學習筆記

一直想用 python 做點網路相關的東西,找了下,發現了 requests 庫,現記錄下學習筆記。requests 是什麼 requests 入門 requests 提高 首先,requests 是什麼。requests是乙個封裝了 http 操作和請求的庫,可以很方便的抓取網頁的內容,囧,這個是...