#爬取有道翻譯接口
def youdao(word):
import hashlib
import requests
import time
import random
import re
appVersion = '5.0 (Windows NT 10.0; WOW64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/74.0.3729.131 Safari/537.36'
#瀏覽器調(diào)試后發(fā)現(xiàn)ts是時(shí)間戳
ts = str(int(time.time()*1000))
#bv是請(qǐng)求頭里面瀏覽器的信息經(jīng)過MD5加密
bv = hashlib.md5(appVersion.encode('utf-8')).hexdigest()
#salt是時(shí)間戳后面隨機(jī)加一位數(shù)字[0,9]
salt = ts + str(random.randint(0,9))
sign_str = "fanyideskweb" + word + salt + "@6f#X3=cCuncYssPsuRUE"
#sign是上面這個(gè)字符串MD5后的結(jié)果
sign = hashlib.md5(sign_str.encode('utf-8')).hexdigest()
# print(ts)
# print(bv)
# print(salt)
#request請(qǐng)求地址
url = 'http://fanyi.youdao.com/translate_o?smartresult=dict&smartresult=rule'
#請(qǐng)求頭
headers = {
"Accept":"application/json, text/javascript, */*; q=0.01",
"Accept-Encoding":"gzip, deflate",
"Accept-Language":"zh-CN,zh;q=0.9",
"Connection":"keep-alive",
"Content-Length":"258",
"Content-Type":"application/x-www-form-urlencoded; charset=UTF-8",
"Cookie":"OUTFOX_SEARCH_USER_ID=1011964969@10.169.0.83; JSESSIONID=aaa2xaVAnC78n4KVSHwUw; OUTFOX_SEARCH_USER_ID_NCOO=280669685.8154466; ___rl__test__cookies=1561601226382",
"Host":"fanyi.youdao.com",
"Origin":"http://fanyi.youdao.com",
"Referer":"http://fanyi.youdao.com/",
"User-Agent":"Mozilla/5.0 (Windows NT 10.0; WOW64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/74.0.3729.131 Safari/537.36",
"X-Requested-With":"XMLHttpRequest"
}
#請(qǐng)求數(shù)據(jù)菱蔬,json字符串霎箍,其中salt,sign逐纬,ts,bv的值每次請(qǐng)求都會(huì)變
data = {
"i":word,
"from":"AUTO",
"to":"AUTO",
"smartresult":"dict",
"client":"fanyideskweb",
"salt":salt,
"sign":sign,
"ts":ts,
"bv":bv,
"doctype":"json",
"version":"2.1",
"keyfrom":"fanyi.web",
"action":"FY_BY_CLICKBUTTION"
}
response = requests.post(url, data=data, headers=headers)
ret = response.text
#正則匹配到需要的翻譯結(jié)果
retRegex = re.compile(r'"translateResult":(.*),"errorCode".*')
translateResult = retRegex.search(ret).group(1)
return translateResult
while True:
word = input("請(qǐng)輸入你需要翻譯的詞匯(回車退出):")
if word == '':
break
else:
print(youdao(word))
python爬取有道翻譯接口
?著作權(quán)歸作者所有,轉(zhuǎn)載或內(nèi)容合作請(qǐng)聯(lián)系作者
- 文/潘曉璐 我一進(jìn)店門吨拗,熙熙樓的掌柜王于貴愁眉苦臉地迎上來,“玉大人,你說我怎么就攤上這事丢胚◆婀希” “怎么了?”我有些...
- 文/不壞的土叔 我叫張陵携龟,是天一觀的道長兔跌。 經(jīng)常有香客問我,道長峡蟋,這世上最難降的妖魔是什么坟桅? 我笑而不...
- 正文 為了忘掉前任,我火速辦了婚禮蕊蝗,結(jié)果婚禮上仅乓,老公的妹妹穿的比我還像新娘。我一直安慰自己蓬戚,他們只是感情好夸楣,可當(dāng)我...
- 文/花漫 我一把揭開白布。 她就那樣靜靜地躺著子漩,像睡著了一般豫喧。 火紅的嫁衣襯著肌膚如雪娶视。 梳的紋絲不亂的頭發(fā)上抢野,一...
- 文/蒼蘭香墨 我猛地睜開眼,長吁一口氣:“原來是場噩夢啊……” “哼忽匈!你這毒婦竟也來了房午?” 一聲冷哼從身側(cè)響起,我...
- 序言:老撾萬榮一對(duì)情侶失蹤丹允,失蹤者是張志新(化名)和其女友劉穎郭厌,沒想到半個(gè)月后,有當(dāng)?shù)厝嗽跇淞掷锇l(fā)現(xiàn)了一具尸體雕蔽,經(jīng)...
- 正文 獨(dú)居荒郊野嶺守林人離奇死亡折柠,尸身上長有42處帶血的膿包…… 初始之章·張勛 以下內(nèi)容為張勛視角 年9月15日...
- 正文 我和宋清朗相戀三年,在試婚紗的時(shí)候發(fā)現(xiàn)自己被綠了批狐。 大學(xué)時(shí)的朋友給我發(fā)了我未婚夫和他白月光在一起吃飯的照片扇售。...
- 正文 年R本政府宣布困乒,位于F島的核電站寂屏,受9級(jí)特大地震影響,放射性物質(zhì)發(fā)生泄漏娜搂。R本人自食惡果不足惜迁霎,卻給世界環(huán)境...
- 文/蒙蒙 一、第九天 我趴在偏房一處隱蔽的房頂上張望百宇。 院中可真熱鬧考廉,春花似錦、人聲如沸携御。這莊子的主人今日做“春日...
- 文/蒼蘭香墨 我抬頭看了看天上的太陽啄刹。三九已至婚苹,卻和暖如春,著一層夾襖步出監(jiān)牢的瞬間鸵膏,已是汗流浹背。 一陣腳步聲響...
- 正文 我出身青樓评肆,卻偏偏與公主長得像债查,于是被迫代替她去往敵國和親。 傳聞我的和親對(duì)象是個(gè)殘疾皇子瓜挽,可洞房花燭夜當(dāng)晚...
推薦閱讀更多精彩內(nèi)容
- 利用道譯界面制作翻譯程序 查看其翻譯界面久橙,發(fā)現(xiàn)POST請(qǐng)求需要傳遞大量的參數(shù)俄占,測試后,動(dòng)態(tài)生成SATL和S嘆息淆衷。當(dāng)...
- 參考: 【Python】有道翻譯的爬蟲實(shí)現(xiàn)(后篇) 用Python破解有道翻譯反爬蟲機(jī)制 我昨天用的正規(guī)有道API...
- Step1 打開有道翻譯 通過審查元素缸榄,找到下圖內(nèi)容 Step2 上代碼 Step3 優(yōu)化代碼 并且修改head...
- 感覺挺好玩的甚带,所以就轉(zhuǎn)了,但我也做了定制化。 原文: https://www.cnblogs.com/daigua...