欧美bbbwbbbw肥妇,免费乱码人妻系列日韩,一级黄片

Python網(wǎng)絡(luò)請求庫requests的10個基本用法

 更新時間:2024年10月18日 11:29:22   作者:Python之棧  
今天我們要聊聊Python中非常實用的一個庫——requests,這個庫讓發(fā)送HTTP請求變得超級簡單,無論你是想抓取網(wǎng)頁數(shù)據(jù)還是測試API接口,requests都能派上大用場,下面我們就一起來看看如何使用requests完成一些常見的任務(wù),需要的朋友可以參考下

引言

隨著互聯(lián)網(wǎng)技術(shù)的發(fā)展,HTTP請求成為開發(fā)者們?nèi)粘9ぷ髦胁豢苫蛉钡囊徊糠帧ython語言以其簡潔易用的特點,成為眾多開發(fā)者首選的編程語言之一。而requests庫作為Python中最受歡迎的HTTP客戶端庫之一,更是大大簡化了發(fā)送HTTP請求的過程。本文將詳細介紹如何利用requests庫執(zhí)行各種類型的HTTP請求,從基礎(chǔ)的GET請求到復(fù)雜的認證、文件上傳等高級功能。

發(fā)送GET請求

首先,你需要安裝requests庫。打開命令行工具,輸入以下命令:

安裝完成后,就可以開始使用了。最簡單的GET請求如下:

這里的response.text會打印出響應(yīng)的內(nèi)容。如果你想獲取特定信息,可以解析返回的數(shù)據(jù)。比如,如果返回的是JSON格式的數(shù)據(jù),可以用response.json()方法將其轉(zhuǎn)換為Python字典。

獲取頁面的二進制數(shù)據(jù)

有時候我們需要獲取圖片或文件等二進制數(shù)據(jù),這時可以使用requests.get方法并指定stream=True來實現(xiàn)。

這段代碼會將圖片下載到當(dāng)前目錄下。

添加查詢參數(shù)

很多時候,我們需要向URL添加查詢參數(shù)。這可以通過傳遞一個字典給params參數(shù)來實現(xiàn):

這里httpbin.org是一個測試HTTP請求的好地方。

發(fā)送POST請求

發(fā)送POST請求也很簡單,只需要調(diào)用requests.post方法,并傳入要發(fā)送的數(shù)據(jù)即可:

處理JSON數(shù)據(jù)

當(dāng)服務(wù)器返回JSON格式的數(shù)據(jù)時,我們可以直接使用response.json()來解析它:

這段代碼會打印出GitHub API返回的所有事件類型。

設(shè)置自定義Header

如果你需要設(shè)置HTTP頭部信息,可以通過headers參數(shù)來實現(xiàn):

設(shè)置User-Agent可以幫助我們模擬瀏覽器行為。

發(fā)送帶認證信息的請求

有時我們需要訪問需要認證的網(wǎng)站或API。requests庫提供了多種認證方式,包括基本認證(Basic Auth)和OAuth等。下面我們來看一個基本認證的例子:

在這個例子中,我們使用了HTTPBasicAuth類來提供用戶名和密碼進行認證。

發(fā)送帶有表單數(shù)據(jù)的請求

當(dāng)我們需要提交表單數(shù)據(jù)時,可以使用requests.post方法,并通過data參數(shù)傳遞字典形式的數(shù)據(jù):

這段代碼會發(fā)送包含名字和郵箱的POST請求。

發(fā)送帶有文件的請求

在上傳文件時,可以使用requests.post方法,并通過files參數(shù)傳遞文件對象:

這段代碼會上傳名為example.txt的文件到服務(wù)器。

處理重定向和超時

在處理網(wǎng)絡(luò)請求時,我們可能會遇到重定向和超時問題。requests庫提供了相應(yīng)的參數(shù)來處理這些問題。

處理重定向:

如果不需要自動重定向,可以設(shè)置allow_redirects=False。

處理超時:

這段代碼設(shè)置了請求的超時時間為5秒,如果超過這個時間沒有響應(yīng),則會拋出Timeout異常。

實戰(zhàn)案例:獲取天氣信息

假設(shè)我們需要獲取某個城市的天氣信息,可以使用OpenWeatherMap提供的API來實現(xiàn)。以下是具體的步驟:

1. 注冊一個OpenWeatherMap賬戶并獲取API密鑰。2. 使用requests庫發(fā)送GET請求獲取天氣數(shù)據(jù)。

下面是完整的代碼示例:

在這段代碼中,我們使用了requests.get方法發(fā)送GET請求,并通過response.json()方法解析返回的JSON數(shù)據(jù)。然后,我們提取了溫度和天氣描述信息并打印出來。

總結(jié)

本文介紹了如何使用requests庫執(zhí)行各種類型的HTTP請求,包括發(fā)送GET/POST請求、處理JSON數(shù)據(jù)、設(shè)置自定義Header、發(fā)送帶認證信息的請求、上傳文件、處理重定向和超時等問題。通過實戰(zhàn)案例展示了如何利用requests獲取天氣信息,希望這些知識能夠幫助你在實際開發(fā)過程中更加高效地處理HTTP請求。

以上就是Python網(wǎng)絡(luò)請求庫requests的10個基本用法的詳細內(nèi)容,更多關(guān)于Python requests基本用法的資料請關(guān)注腳本之家其它相關(guān)文章!

相關(guān)文章

  • 如何生成對角矩陣 numpy.diag

    如何生成對角矩陣 numpy.diag

    這篇文章主要介紹了如何生成對角矩陣 numpy.diag,具有很好的參考價值,希望對大家有所幫助。如有錯誤或未考慮完全的地方,望不吝賜教
    2022-05-05
  • Python中捕獲鍵盤的方式詳解

    Python中捕獲鍵盤的方式詳解

    這篇文章主要介紹了Python中捕獲鍵盤的方式,文中通過示例代碼介紹的非常詳細,對大家的學(xué)習(xí)或者工作具有一定的參考學(xué)習(xí)價值,需要的朋友們下面隨著小編來一起學(xué)習(xí)學(xué)習(xí)吧
    2019-03-03
  • python linecache 處理固定格式文本數(shù)據(jù)的方法

    python linecache 處理固定格式文本數(shù)據(jù)的方法

    今天小編就為大家分享一篇python linecache 處理固定格式文本數(shù)據(jù)的方法,具有很好的參考價值,希望對大家有所幫助。一起跟隨小編過來看看吧
    2019-01-01
  • Python Xml文件添加字節(jié)屬性的方法

    Python Xml文件添加字節(jié)屬性的方法

    下面小編就為大家分享一篇Python Xml文件添加字節(jié)屬性的方法,具有很好的參考價值,希望對大家有所幫助。一起跟隨小編過來看看吧
    2018-03-03
  • Python如何自動生成環(huán)境依賴包requirements

    Python如何自動生成環(huán)境依賴包requirements

    這篇文章主要介紹了Python如何自動生成環(huán)境依賴包requirements問題,具有很好的參考價值,希望對大家有所幫助,如有錯誤或未考慮完全的地方,望不吝賜教
    2025-04-04
  • 基于Python實現(xiàn)面向?qū)ο蟀鎸W(xué)生管理系統(tǒng)

    基于Python實現(xiàn)面向?qū)ο蟀鎸W(xué)生管理系統(tǒng)

    這篇文章主要為大家詳細介紹了如何利用python實現(xiàn)學(xué)生管理系統(tǒng)(面向?qū)ο蟀妫?,文中示例代碼介紹的非常詳細,具有一定的參考價值,感興趣的小伙伴們可以參考一下
    2022-07-07
  • Python獲取系統(tǒng)默認字符編碼的方法

    Python獲取系統(tǒng)默認字符編碼的方法

    這篇文章主要介紹了Python獲取系統(tǒng)默認字符編碼的方法,涉及Python中sys模塊getdefaultencoding方法的使用技巧,需要的朋友可以參考下
    2015-06-06
  • 基于python實現(xiàn)上傳文件到OSS代碼實例

    基于python實現(xiàn)上傳文件到OSS代碼實例

    這篇文章主要介紹了基于python實現(xiàn)上傳文件到OSS,文中通過示例代碼介紹的非常詳細,對大家的學(xué)習(xí)或者工作具有一定的參考學(xué)習(xí)價值,需要的朋友可以參考下
    2020-05-05
  • 詳解python中flask_caching庫的用法

    詳解python中flask_caching庫的用法

    這篇文章主要介紹了詳解python中flask_caching庫的用法,可以在一定的時間內(nèi)直接返回結(jié)果而不是每次都需要計算或者從數(shù)據(jù)庫中查找。flask_caching插件就是提供這種功能的神器,需要的朋友可以參考下
    2023-05-05
  • Python繪制計算機CPU占有率變化的折線圖

    Python繪制計算機CPU占有率變化的折線圖

    這篇文章主要為大家詳細介紹了Python繪制計算機CPU占有率變化的折線圖,文中示例代碼介紹的非常詳細,具有一定的參考價值,感興趣的小伙伴們可以參考一下
    2022-03-03

最新評論