Python獲取百度翻譯的兩種方法示例詳解
一、引言
百度是我們常用的搜索工具,其翻譯是與愛詞霸合作,總體看其反應(yīng)速度較快,可以作為項目中重要的翻譯工具。根據(jù)大家的需要,現(xiàn)提供兩種Python獲取百度翻譯的兩種辦法:
二、requests法
我們引用requests模塊,向百度發(fā)出post請求,得到回復(fù)后,進(jìn)行解釋為json格式數(shù)據(jù)。代碼如下:
import requests #找一個趁手的工具,1. 導(dǎo)入這個工具
url = "https://fanyi.baidu.com/sug" # 2. 確定爬取的網(wǎng)址,存到變量里面url
#3. 偽裝爬蟲
headers = {"user-agent":"Mozilla/5.0 (Windows NT 10.0; Win64; x64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/110.0.0.0 Safari/537.36",
"cookie":'PSTM=1715648276; BIDUPSID=4FAECEB2016218E5337788D59D97E028; BAIDUID=A4621D4AF575EB35000B164A4D71A6C9:FG=1; BDSFRCVID=gDDOJexroG3M1QJttZbIbSp-4cGQd7cTDYLEOwXPsp3LGJLVYVGdEG0PtEXPGLtMnhULogKKBeOTHg4F_2uxOjjg8UtVJeC6EG0Ptf8g0M5; H_BDCLCKID_SF=Jn-O_C82JKL3HJOmMJjE5bcHMhoK--Q0KKJyLR-8Kb7VbPQCyUnkbfJBDloD-l3-ajnJ0qboKfO2KDbTyT5OL447yajDJjOuXKJi_JC-QbT8ob53DJ7pQT8r2xDOK5OibmDqslnNab3vOpoNXpO1bT0zBN5thURB2DkO-4bCWJ5TMl5jDh3Mb6ksDhAtqj0OfnIe_I0KfbjjfbTCMJOBq4k0-qJ-a4JQa5TbsJOOaCv5OpOOy4oTj6D0KqonK46JbIcBsRoR-TCMepk4MU5o3MvBKHKjWlRQWbcLof3V2fnq_Ij9Qft20bIEeMtjBbQuJtj7KR7jWhvIeq72y-tMQlRX5q79atTMfNTJ-qcH0KQpsIJM5-DWbT8bjHCJt6K8JbujoKvK-nO5KRQphRrhq4tehH4O5xJ9WDTOQJ7TthCaVqcm5h6D0-D9K2FJ5MbI5nv2-pbwBp5Cfb5K0jJHyUIzynjkLfbb3mkjbPbNyUJn8-bEh47lX-4syPRGKxRnWIkJKfA-b4ncjRcTehoM3xI8LNj405OTbIFO0KJzJCFMMDLwjTK2DTPBKMbeet5Kaj5tsJOOaCkWHqOOy4oWK441DPFDQxTJbNQabnoR-TCMHp3hb5Jj3M04X-oN-PQpLRvKahcIWMQZSl3gQft20b0kWb3xWn3uaDbP2n7jWhvIeq72y-tMQlRX5q79atTMfNTJ-qcH0KQpsIJM5-DWbT8IjHCJt6K8JbujoKvt-5rDHJTg5DTjhPrMbPORWMT-MTryKKOztxjkf-bL-xrD0nODjMbxQ40fKanRhlRNB-3iV-OxDUvnyxAZWJjxKUQxtNRJKxnx3hRM8Jrd3fvobUPULxo9LUvMJgcdot5yBbc8eIna5hjkbfJBQttjQn3hfIkj2CKLK-oj-D8lj5AM3j; BD_UPN=12314753; H_WISE_SIDS=60360_60600_60728_60749; delPer=0; BD_CK_SAM=1; BAIDUID_BFESS=A4621D4AF575EB35000B164A4D71A6C9:FG=1; BDSFRCVID_BFESS=gDDOJexroG3M1QJttZbIbSp-4cGQd7cTDYLEOwXPsp3LGJLVYVGdEG0PtEXPGLtMnhULogKKBeOTHg4F_2uxOjjg8UtVJeC6EG0Ptf8g0M5; H_BDCLCKID_SF_BFESS=Jn-O_C82JKL3HJOmMJjE5bcHMhoK--Q0KKJyLR-8Kb7VbPQCyUnkbfJBDloD-l3-ajnJ0qboKfO2KDbTyT5OL447yajDJjOuXKJi_JC-QbT8ob53DJ7pQT8r2xDOK5OibmDqslnNab3vOpoNXpO1bT0zBN5thURB2DkO-4bCWJ5TMl5jDh3Mb6ksDhAtqj0OfnIe_I0KfbjjfbTCMJOBq4k0-qJ-a4JQa5TbsJOOaCv5OpOOy4oTj6D0KqonK46JbIcBsRoR-TCMepk4MU5o3MvBKHKjWlRQWbcLof3V2fnq_Ij9Qft20bIEeMtjBbQuJtj7KR7jWhvIeq72y-tMQlRX5q79atTMfNTJ-qcH0KQpsIJM5-DWbT8bjHCJt6K8JbujoKvK-nO5KRQphRrhq4tehH4O5xJ9WDTOQJ7TthCaVqcm5h6D0-D9K2FJ5MbI5nv2-pbwBp5Cfb5K0jJHyUIzynjkLfbb3mkjbPbNyUJn8-bEh47lX-4syPRGKxRnWIkJKfA-b4ncjRcTehoM3xI8LNj405OTbIFO0KJzJCFMMDLwjTK2DTPBKMbeet5Kaj5tsJOOaCkWHqOOy4oWK441DPFDQxTJbNQabnoR-TCMHp3hb5Jj3M04X-oN-PQpLRvKahcIWMQZSl3gQft20b0kWb3xWn3uaDbP2n7jWhvIeq72y-tMQlRX5q79atTMfNTJ-qcH0KQpsIJM5-DWbT8IjHCJt6K8JbujoKvt-5rDHJTg5DTjhPrMbPORWMT-MTryKKOztxjkf-bL-xrD0nODjMbxQ40fKanRhlRNB-3iV-OxDUvnyxAZWJjxKUQxtNRJKxnx3hRM8Jrd3fvobUPULxo9LUvMJgcdot5yBbc8eIna5hjkbfJBQttjQn3hfIkj2CKLK-oj-D8lj5AM3j; channel=baidusearch; baikeVisitId=356e66e5-f4fb-4dd9-99a8-06bbc9ceb739; __bid_n=18ea75651ea4944bc97197; BD_HOME=1; H_WISE_SIDS_BFESS=60360_60600_60728_60749; B64_BOT=1; COOKIE_SESSION=5687_0_7_7_7_16_0_0_4_6_0_0_715485_0_6_0_1727255911_0_1727255905|9#169_6_1718709886|3; PSINO=7; BDRCVFR[S4-dAuiWMmn]=mk3SLVN4HKm; BDRCVFR[k-3xBxsWSJs]=mk3SLVN4HKm; H_PS_PSSID=60600_60794_60826_60844; BA_HECTOR=85808lal0h0g0k8g8h258h8h8nq73q1jfd5bi1v; ZFY=CcXTJMCi9ht2ML4gezdFtbE9Uar1JmpUfQgd:BgWOiis:C'}
while True:
word = input("請輸入單詞:")
resp = requests.post(url,headers = headers, data = {"kw":word}) # 發(fā)請求
for item in resp.json()['data']:
#想看效果,就打印Item
print(item["v"])
三、urllib法
導(dǎo)入urllib,發(fā)出Request向url請求,再用urlopen讀取并編碼為utf-8,最后獲取單詞的翻譯,代碼如下:
from urllib import request, parse
import json
def translate_word(string):
url = "https://fanyi.baidu.com/sug" # 請求數(shù)據(jù)的url鏈接
data = {'kw': string}
data_url = parse.urlencode(data)
req = request.Request(url=url, data=data_url.encode('utf-8'))
response = request.urlopen(req).read()
res = json.loads(response)
if 'data' in res and len(res['data']) > 0:
trans_list = res['data'][0]['v']
if ';' in trans_list:
trans = trans_list.split(';')
else:
trans = trans_list
else:
trans = "翻譯失敗"
return trans_list
print(translate_word("think"))四、學(xué)后反思
對比兩種兩法,獲取的數(shù)據(jù)內(nèi)容不盡相同,第二種獲取的內(nèi)容較少,第一種獲取的內(nèi)容更為全面,方法也簡單,但是獲取的內(nèi)容有重復(fù)。
大家可以根據(jù)個人的需求,選擇適合自己的代碼。
到此這篇關(guān)于Python獲取百度翻譯的兩種方法的文章就介紹到這了,更多相關(guān)Python獲取百度翻譯內(nèi)容請搜索腳本之家以前的文章或繼續(xù)瀏覽下面的相關(guān)文章希望大家以后多多支持腳本之家!
相關(guān)文章
Python實(shí)現(xiàn)pdf電子發(fā)票信息提取到excel表格
這篇文章主要為大家詳細(xì)介紹了如何使用Python實(shí)現(xiàn)pdf電子發(fā)票信息提取并保存到excel表格,文中的示例代碼講解詳細(xì),感興趣的小伙伴可以跟隨小編一起學(xué)習(xí)一下2025-05-05
使用Python可設(shè)置抽獎?wù)邫?quán)重的抽獎腳本代碼
這篇文章主要介紹了Python可設(shè)置抽獎?wù)邫?quán)重的抽獎腳本,抽獎系統(tǒng)包含可給不同抽獎?wù)咴O(shè)置不同的權(quán)重,先從價值高的獎品開始抽,已經(jīng)中獎的人,不再參與后續(xù)的抽獎,本文通過實(shí)例代碼給大家介紹的非常詳細(xì),需要的朋友可以參考下2022-11-11
python實(shí)現(xiàn)尋找最長回文子序列的方法
這篇文章主要為大家詳細(xì)介紹了python實(shí)現(xiàn)尋找最長回文子序列的方法,具有一定的參考價值,感興趣的小伙伴們可以參考一下2018-06-06
詳解Python對JSON中的特殊類型進(jìn)行Encoder
這篇文章主要介紹了詳解Python對JSON中的特殊類型進(jìn)行Encoder,文中通過示例代碼介紹的非常詳細(xì),對大家的學(xué)習(xí)或者工作具有一定的參考學(xué)習(xí)價值,需要的朋友們下面隨著小編來一起學(xué)習(xí)學(xué)習(xí)吧2019-07-07
Python中免驗證跳轉(zhuǎn)到內(nèi)容頁的實(shí)例代碼
在本篇文章里小編給大家整理的是一篇關(guān)于Python中免驗證跳轉(zhuǎn)到內(nèi)容頁的實(shí)例代碼,有興趣的朋友們可以學(xué)習(xí)分享下。2020-10-10
利用Python實(shí)現(xiàn)PDF文檔的自動化創(chuàng)建
在當(dāng)今數(shù)字化的世界中,信息共享和數(shù)據(jù)報告離不開文檔,而在眾多文檔格式中,PDF因其跨平臺兼容性、固定布局和安全性,成為企業(yè)報告、合同、發(fā)票等各類正式文檔的首選,本文將深入探討如何使用Spire.PDF for Python這一專業(yè)庫,實(shí)現(xiàn)PDF文檔的自動化創(chuàng)建2025-11-11
Python中五種不同解析庫的應(yīng)用與提取速度對比
這篇文章主要為大家詳細(xì)介紹了Python中五種不同解析庫的應(yīng)用與提取速度對比,文中的示例代碼講解詳細(xì),感興趣的小伙伴可以跟隨小編一起學(xué)習(xí)一下2025-05-05

