Python爬蟲(chóng)手把手教程-POST請(qǐng)求爬取數(shù)據(jù)實(shí)戰(zhàn)

試了一下,寫了個(gè)百度翻譯的Python腳本
不過(guò)后來(lái)發(fā)現(xiàn)我找到的是SUG也就是suggestion的建議提示詞,只支持單詞的翻譯,如果沒(méi)有提示詞就不顯示,但是這個(gè)支持中英文互譯。
程序運(yùn)行預(yù)覽:

百度翻譯中提示詞的預(yù)覽:

代碼:
import requests
import json
def translateBaidu(kw):
# 請(qǐng)求URL
url = "https://fanyi.baidu.com/sug"
data = {
'kw': kw
}
try:
res = requests.post(url=url, data=data)
res.raise_for_status()
# 檢查請(qǐng)求是否成功,如果狀態(tài)碼不是 200,拋出異常
except requests.exceptions.RequestException as e:
print("請(qǐng)求失?。?#34;, e)
return
try:
result = res.json()
r_str = str(res.json()).replace("\'", "\"")
r_dict = json.loads(r_str)
for item in r_dict['data']:
if item['v']:
print(item['v'])
else:
print("Error:遍歷出現(xiàn)問(wèn)題")
except (json.JSONDecodeError, KeyError) as e:
print(res.json())
print("解析結(jié)果出錯(cuò):", e)
# 主程序入口
if __name__ == "__main__":
while True:
keys = input("請(qǐng)輸入翻譯的文本:")
if keys == 'q':
break
translateBaidu(keys)