python requests 基礎學習

2022-05-02 09:00:11 字數 1692 閱讀 9660

首先,python 標準庫中的urllib2模組提供了你所需要的大多數 http 功能,但是它的 api 不友好。它是為另乙個時代、另乙個網際網路所建立的。它需要巨量的工作,甚至包括各種方法覆蓋,來完成最簡單的任務,所以學習reuqests模組,比較簡潔好用(以後慢慢會學習scapy,更強大的庫),安裝就不用說了

1 匯入模組

>>> import requests

2 直觀感受一下傳送請求的簡潔

>>> r = requests.get('your url')

>>> r = requests.post('your url')

#put delete head options方法也是這種用法

3 為url傳遞引數

>>> url_params = #字典傳遞引數,如果值為none的鍵不會被新增到url中

>>> r = requests.get('your url',params = url_params)

>>> print(r.url)

your url?key=value

4 響應的內容

>>> r.encoding #獲取當前的編碼

>>> r.encoding = 'utf-8' #設定編碼

>>> r.text #以encoding解析返回內容

>>> r.content #以位元組形式(二進位制)返回

>>> r.json() #以json形式返回,前提返回的內容確保是json格式的,不然解析出錯會拋異常

5 定製頭和coookie資訊

>>> header =

>>> r = requests.get/post('your url',headers=header,cookies=cookie)

6 傳送post資料請求

>>> send =

>>> r = requests.post('your url',data = send)  # 如果你傳遞乙個string而不是乙個dict,那麼資料會被直接發布出去,這個也可以上傳檔案

7 響應狀態碼

>>> r.status_code #如果不是200,可以使用 r.raise_for_status() 丟擲異常

8 響應

>>> r.headers #返回字典型別,頭資訊

# r.requests.headers 返回傳送到伺服器的頭資訊

>>> r.cookies #返回cookie

>>> r.history #返回重定向資訊,當然可以在請求是加上allow_redirects= false 阻止重定向

9 超時

>>> r = requests.get('url',timeout=1)#設定秒數超時,僅對於連線有效

10 會話物件,讓你能夠跨請求保持某些引數

>>> s = requests.session()

>>> s.auth = ('auth','passwd')

>>> s.headers =

>>> r = s.get('url') 

>>> r1 = s.get('url1') 

11 **

>>> proxies =

>>> requests.get('url',proxies=proxies)

Python Requests 學習筆記

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

python requests傳送json格式資料

requests是常用的請求庫,不管是寫爬蟲指令碼,還是測試介面返回資料等。都是很簡單常用的工具。但是,我們寫程式的時候,最常用的介面post資料的格式是json格式。當我們需要post json格式資料的時候,怎麼辦呢,只需要新增修改兩處小地方即可。詳見如下 import requests imp...

Python Requests 學習 筆記

在做web題目的時候看到一道這樣的題,要讓我迅速提交,看到別人的writeup 發現要寫python指令碼,於是就來學一下python requests 題目連線 來自網路安全實驗室 該文件的內容來自 pyhon requests 快速入門 r requests.get 網域名稱 其他玩法 r re...