日韩久久久精品,亚洲精品久久久久久久久久久,亚洲欧美一区二区三区国产精品 ,一区二区福利

python爬蟲 urllib模塊發(fā)起post請求過程解析

系統(tǒng) 1790 0

urllib模塊發(fā)起的POST請求

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

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

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

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

python爬蟲 urllib模塊發(fā)起post請求過程解析_第1張圖片

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

python爬蟲 urllib模塊發(fā)起post請求過程解析_第2張圖片

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

python爬蟲 urllib模塊發(fā)起post請求過程解析_第3張圖片

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

python爬蟲 urllib模塊發(fā)起post請求過程解析_第4張圖片

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

python爬蟲 urllib模塊發(fā)起post請求過程解析_第5張圖片

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

一、將POST請求封裝到字典

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

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

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

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

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

data = response.read()
print(data)
          

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

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

python爬蟲 urllib模塊發(fā)起post請求過程解析_第6張圖片

以上就是本文的全部內容,希望對大家的學習有所幫助,也希望大家多多支持腳本之家。


更多文章、技術交流、商務合作、聯系博主

微信掃碼或搜索:z360901061

微信掃一掃加我為好友

QQ號聯系: 360901061

您的支持是博主寫作最大的動力,如果您喜歡我的文章,感覺我的文章對您有幫助,請用微信掃描下面二維碼支持博主2元、5元、10元、20元等您想捐的金額吧,狠狠點擊下面給點支持吧,站長非常感激您!手機微信長按不能支付解決辦法:請將微信支付二維碼保存到相冊,切換到微信,然后點擊微信右上角掃一掃功能,選擇支付二維碼完成支付。

【本文對您有幫助就好】

您的支持是博主寫作最大的動力,如果您喜歡我的文章,感覺我的文章對您有幫助,請用微信掃描上面二維碼支持博主2元、5元、10元、自定義金額等您想捐的金額吧,站長會非常 感謝您的哦?。。?/p>

發(fā)表我的評論
最新評論 總共0條評論
主站蜘蛛池模板: 鄯善县| 云梦县| 深州市| 卫辉市| 炉霍县| 澄城县| 海城市| 行唐县| 乌拉特中旗| 独山县| 水城县| 当涂县| 仙居县| 财经| 江口县| 微博| 济宁市| 吉林市| 平昌县| 玉环县| 南平市| 乐至县| 新兴县| 尚义县| 阳新县| 武山县| 丹阳市| 宁国市| 宜丰县| 鄂州市| 岳阳市| 巩义市| 平度市| 平山县| 洪江市| 伊川县| 翁牛特旗| 西贡区| 内江市| 柘荣县| 成都市|