Python知識(shí)分享網(wǎng) - 專(zhuān)業(yè)的Python學(xué)習(xí)網(wǎng)站 學(xué)Python,上Python222
requests之post請(qǐng)求實(shí)例-百度翻譯
匿名網(wǎng)友發(fā)布于:2023-10-29 20:31:10
(侵權(quán)舉報(bào))

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

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

 

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

Fetch/XHR,來(lái)縮小尋找范圍。

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

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

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

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

https://fanyi.baidu.com/sug

就一個(gè)參數(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方法自動(dòng)把unicode編碼轉(zhuǎn)成中文
result = json.loads(r.text)
print(result)

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

轉(zhuǎn)載自: