首頁  >  文章  >  後端開發  >  實例詳解python之requests模組

實例詳解python之requests模組

WBOY
WBOY轉載
2022-03-15 18:11:001744瀏覽

本篇文章為大家帶來了關於python的相關知識,其中主要介紹了requests模組的相關問題,Requests模組是一個用於網路請求的模組,主要用來模擬瀏覽器發送請求,希望對大家有幫助。

實例詳解python之requests模組

推薦學習:python學習教學

#Requests模組是一個用於網路請求的模組,主要用來模擬瀏覽器發送請求。其實類似的模組很多,像是urllib,urllib2,httplib,httplib2,他們基本上都提供相似的功能。但是這些模組都複雜而且差不多過時了,requests模組簡單強大高效,使得其在眾多網路請求模組中脫引而出。

requests使用

環境安裝:pip install requests

使用流程:

  • 指定url
  • #基於requests模組發送請求
  • 取得回應物件中的資料值
  • 持久化儲存(不是必須的)

案例:爬取百度首頁的資料

#1. 导包
import requests
#2. 指定url
url = "https://www.baidu.com"
#3. 使用GET方法发送请求,该方法会返回一个响应对象
response = requests.get(url=url)
#4. 获取响应数据
print(response.status_code)  # 打印状态码
print(response.url)          # 打印请求url
print(response.headers)      # 打印响应头头信息
print(response.text)         #以文本形式打印网页源码

#保存数据
response.encoding = 'utf-8'  #指定编码格式,不然打开乱码
text = response.text
with open('./2.html','w',encoding='utf-8') as f:
    f.write(text)

解決requests請求的資料中文亂碼問題-》requests請求回傳內容中文亂碼問題

requests請求方法

上面的案例requests發送了一個GET請求方法,除此之外還有其他的請求方法。最常用的就是GET和POST方法。

  • res = requests.get ()
  • res = requests.post ()
  • res = requests.put ()
  • res = requests.delete ()
  • res = requests.head ()
  • #res = requests.options ()
##且在指定方法發送請求的時候,有時候還需要在請求方法括號中requests.get(url=url, xx = xx)指定一些參數,如下。先了解一下

#filesCookies#cookies##重定向處理allow_ redirects = False/True逾時##timeout

#方法

參數名稱

#HTTP頭

GET參數

params

POST參數

data


憑證驗證

  • #verify = False/True
  • 工作流程(延遲下載)
  • stream=False/ True

事件掛鉤

#########hooks=dict(response=)#################驗證###### ######auth=##################代理程式############proxies=######### #########requests回應對象屬性#########在上面爬取百度首頁時,response = requests.get(url=url)其傳回的是回應對象,而如果我們想要取得具體的資料例如回應碼或網頁原始碼時,就需要透過指定回應物件的屬性來取得。如response.status_code取得回應碼############ 取得請求url                                                    res. status_code######回應資料(以字串形式為字串) res 。                 res.cookies### #########推薦學習:###python教學#######

以上是實例詳解python之requests模組的詳細內容。更多資訊請關注PHP中文網其他相關文章!

陳述:
本文轉載於:csdn.net。如有侵權,請聯絡admin@php.cn刪除