溫馨提示×

溫馨提示×

您好,登錄后才能下訂單哦!

密碼登錄×
登錄注冊×
其他方式登錄
點擊 登錄注冊 即表示同意《億速云用戶服務條款》

怎么在python中使用urllib模塊發起post請求

發布時間:2021-03-18 15:41:51 來源:億速云 閱讀:535 作者:Leah 欄目:開發技術

這篇文章將為大家詳細講解有關怎么在python中使用urllib模塊發起post請求,文章內容質量較高,因此小編分享給大家做個參考,希望大家閱讀完這篇文章后對相關知識有一定的了解。

urllib模塊發起的POST請求

案例:爬取百度翻譯的翻譯結果

1.通過瀏覽器捉包工具,找到POST請求的url

針對ajax頁面請求的所對應url獲取,需要用到瀏覽器的捉包工具。查看百度翻譯針對某個字條發送ajax請求,所對應的url

點擊clear按鈕可以把抓包工具,所抓到請求清空

怎么在python中使用urllib模塊發起post請求

然后填上翻譯字條發送ajax請求,紅色框住的都是發送的ajax請求

怎么在python中使用urllib模塊發起post請求

抓包工具All按鈕代表 顯示抓到的所有請求 ,包括GET、POST請求 、基于ajax的POST請求
XHR代表 只顯示抓到的基于ajax的POST請求

怎么在python中使用urllib模塊發起post請求

哪個才是我們所要的基于ajax的POST請求,這個POST請求是攜帶翻譯字條的蘋果請求參數

怎么在python中使用urllib模塊發起post請求

再看看這個POST請求 對應的請求URL ,這個URL是我們要請求的URL

怎么在python中使用urllib模塊發起post請求

發起POST請求之前,要處理POST請求攜帶的參數 3步流程:

一、將POST請求封裝到字典

二、使用parse模塊中的urlencode(返回值類型是字符串類型)進行編碼處理

三、將步驟二的編碼結果轉換成byte類型

import urllib.request
import urllib.parse
# 1.指定url
url = 'https://fanyi.baidu.com/sug'
# 發起POST請求之前,要處理POST請求攜帶的參數 流程:
# 一、將POST請求封裝到字典
data = {
  # 將POST請求所有攜帶參數放到字典中
  'kw':'蘋果',
}
# 二、使用parse模塊中的urlencode(返回值類型是字符串類型)進行編碼處理
data = urllib.parse.urlencode(data)

# 三、將步驟二的編碼結果轉換成byte類型
data = data.encode()

'''2. 發起POST請求:urlopen函數的data參數表示的就是經過處理之后的
POST請求攜帶的參數
'''
response = urllib.request.urlopen(url=url,data=data)

data = response.read()
print(data)

把拿到的翻譯結果 去json在線格式校驗(在線JSON校驗格式化工具(Be JSON)),

點擊格式化校驗和unicode轉中文

怎么在python中使用urllib模塊發起post請求

關于怎么在python中使用urllib模塊發起post請求就分享到這里了,希望以上內容可以對大家有一定的幫助,可以學到更多知識。如果覺得文章不錯,可以把它分享出去讓更多的人看到。

向AI問一下細節

免責聲明:本站發布的內容(圖片、視頻和文字)以原創、轉載和分享為主,文章觀點不代表本網站立場,如果涉及侵權請聯系站長郵箱:is@yisu.com進行舉報,并提供相關證據,一經查實,將立刻刪除涉嫌侵權內容。

AI

亚洲午夜精品一区二区_中文无码日韩欧免_久久香蕉精品视频_欧美主播一区二区三区美女