Python知識分享網(wǎng) - 專業(yè)的Python學(xué)習(xí)網(wǎng)站 學(xué)Python,上Python222
requests之post請求實(shí)例-百度翻譯
發(fā)布于:2023-10-29 20:31:10

2024 一天掌握python爬蟲【基礎(chǔ)篇】 涵蓋 requests、beautifulsoup、selenium

https://www.bilibili.com/video/BV1Ju4y1Y7k6/

 

打開百度翻譯網(wǎng)址,我們輸入需要翻譯的英文,谷歌 F12 打開開發(fā)者工具,network可以看到網(wǎng)絡(luò)請求,我們需要找到請求的API,我們可以選擇

Fetch/XHR,來縮小尋找范圍。

經(jīng)過排查,有兩個接口設(shè)計(jì)到翻譯

sug請求是用戶界面的左側(cè)的一些翻譯結(jié)果,v2transapi是用戶界面右側(cè)的精準(zhǔn)結(jié)果。

所以我們根據(jù)需求,都可以做。

我們就以左側(cè)的用戶界面sug接口為例,用requests的post方式模擬下。

https://fanyi.baidu.com/sug

就一個參數(shù)

import requests
import json

url = "https://fanyi.baidu.com/sug"

headers = {
    'User-Agent': 'Mozilla/5.0 (Windows NT 10.0; Win64; x64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/117.0.0.0 Safari/537.36'
}

data = {
    'kw': 'white'
}

r = requests.post(url=url, data=data, headers=headers)

print(r.text)

# json.loads方法自動把unicode編碼轉(zhuǎn)成中文
result = json.loads(r.text)
print(result)

這里用post方法實(shí)現(xiàn),返回結(jié)果是unicode編碼,因?yàn)橐彩莏son格式,所以我們用json.loads方法,直接獲取Json對象,以及實(shí)現(xiàn)unicode編碼轉(zhuǎn)成中文。

轉(zhuǎn)載自: