亚洲精品久久久中文字幕-亚洲精品久久片久久-亚洲精品久久青草-亚洲精品久久婷婷爱久久婷婷-亚洲精品久久午夜香蕉

您的位置:首頁技術文章
文章詳情頁

Python 調用有道翻譯接口實現翻譯

瀏覽:33日期:2022-08-04 16:28:56

最近為了熟悉一下 js 用有道翻譯練了一下手,寫一篇博客記錄一下,也希望能對大家有所啟迪,不過這些網站更新太快,可能大家嘗試的時候會有所不同。

首先來看一下網頁 post 過去的數據

Python 調用有道翻譯接口實現翻譯

Python 調用有道翻譯接口實現翻譯

大家不難發現,我們翻譯的內容是放在 post 的 data 中的,這些參數,除了 salt 和 sign 要么就是不會變化,要么就是一眼能看出來意義的;那么這個 salt 和 sign 是什么呢?salt 根據 ta 數據的特征,我們應該會想到,這應該是一個時間戳,而 sign 又是什么呢?我們一起來看一下

找到這個 js 文件,最上面這個 send 文件

Python 調用有道翻譯接口實現翻譯

將里面的 js 代碼拷貝出來,格式化一下,搜索 sign

Python 調用有道翻譯接口實現翻譯

我們發現,salt 確實是一個時間戳,但 sign 呢?,這里對 sign 的計算稍微多??錄婦洌?繽跡

Python 調用有道翻譯接口實現翻譯

大家發現 sign 的值,也就是 o 一共是對四個參數進行求 md5 碼,兩個是定值,一個是前面求到的時間戳,還有一個是什么呢?這個地方我也找了挺久的(還是不懂 js 的痛啊,哭。。。)剩下的參數,就是圖片中所謂的 t

var t = e.i

然后在 data 中,大家還能發現這么一句:

i:e.i

這個 i 我們對應到 ta 發送的 data 中,不就是我們要翻譯的字符串嗎?哈哈哈,被我發現了吧!

發現這個就好辦了,我們找出其中參數之間的關系,用Python實現 ta

Python 調用有道翻譯接口實現翻譯

但當我們構造好 data 興高采烈地將數據 post 過去的時候,會發現出現報錯了

Python 調用有道翻譯接口實現翻譯

為什么呢?難道是我們的 data 構造的有問題嗎?不清楚,先嘗試一下,咱們吧瀏覽器中的 data 拷貝進來運行一下,發現還是出錯了;那么說明錯誤不是出在 data 上面了,那究竟是那里出了問題呢?難道 ta 還有其他的校驗方式;別著急繼續分析,我們再觀察一下,post 請求,發現這個請求是帶了 cookie的,于是我們猜測,是不是 cookie 的原因呢? 還是不清楚,我們嘗試一下,將 data 對應的 cookie 加上,再運行一下。發現這次通過了,我們的猜測沒錯,確實是 cookie 的原因,那么這個 cookie 又是怎么來的呢?

Cookie

Python 調用有道翻譯接口實現翻譯

多嘗試幾次,大家會發現,不同的請求內容,前面兩個是不會發生改變的,而第三個,結合我們之前的經驗,是不是很像一個時間戳;既然有猜測,咱們就又來嘗試一下,自己構造一個 Cookie post 過去,萬事大吉,哈哈哈哈。

最后附上我的代碼

#/usr/bin/python # encoding:utf-8# __Author__ = Slwhyimport requestsimport timeimport randomimport hashlib#i = '' + ((new Date).getTime() + parseInt(10 * Math.random(), 10))i = str(int(time.time()*1000)+random.randint(1,10))#o = n.md5('fanyideskweb' + t + i + 'aNPG!!u6sesA>hBAW1@(-');t = raw_input('please input the word you want to translate:')u = ’fanyideskweb’l = ’aNPG!!u6sesA>hBAW1@(-’src = u + t + i + l # u 與 l 是固定字符串,t是你要翻譯的字符串,i是之前的時間戳m2 = hashlib.md5()m2.update(src)str_sent = m2.hexdigest()’’’ i:number from:AUTO to:AUTO smartresult:dict client:fanyideskweb salt:1515462554510 sign:32ea4a33c063d174a069959a5df1a115 doctype:json version:2.1 keyfrom:fanyi.web action:FY_BY_REALTIME typoResult:false’’’head = { ’Accept’:’application/json, text/javascript, */*; q=0.01’, ’Accept-Encoding’:’gzip, deflate’, ’Accept-Language’:’zh-CN,zh;q=0.9’, ’Content-Length’:’200’, ’Connection’:’keep-alive’, ’Content-Type’:’application/x-www-form-urlencoded; charset=UTF-8’, ’Host’:’fanyi.youdao.com’, ’Origin’:’http://fanyi.youdao.com’, ’Referer’:’http://fanyi.youdao.com/’, ’User-Agent’:’Mozilla/5.0 (X11; Linux x86_64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/63.0.3239.108 Safari/537.36’, ’X-Requested-With’:’XMLHttpRequest’, # ’Cookie’: ’YOUDAO_MOBILE_ACCESS_TYPE=1; [email protected]; OUTFOX_SEARCH_USER_ID_NCOO=1846816080.1245883; fanyi-ad-id=39535; fanyi-ad-closed=1; JSESSIONID=aaaYuYbMKHEJQ7Hanizdw; ___rl__test__cookies=1515471316884’}head[’Cookie’] = ’[email protected]; OUTFOX_SEARCH_USER_ID_NCOO=1846816080.1245883; ___rl__test__cookies=’+str(time.time()*1000) # ’___rl__test__cookies=1515471316884’data = { ’i’: t, ’from’:’AUTO’, ’to’:’AUTO’, ’smartresult’:’dict’, ’client’:’fanyideskweb’, ’salt’:i, ’sign’:str_sent, ’doctype’:’json’, ’version’:’2.1’, ’keyfrom’:’fanyi.web’, ’action’:’FY_BY_REALTIME’, ’typoResult’:’false’}s = requests.session()# print dataurl = ’http://fanyi.youdao.com/translate_o?smartresult=dict&smartresult=rule’p = s.post(url,data= data,headers = head)print p.text

到此這篇關于Python 調用有道翻譯接口實現翻譯的文章就介紹到這了,更多相關Python 有道翻譯內容請搜索好吧啦網以前的文章或繼續瀏覽下面的相關文章希望大家以后多多支持好吧啦網!

標簽: Python 編程
相關文章:
主站蜘蛛池模板: 国产在线观看黄色 | 国产性夜夜性夜夜爽91 | 全黄一级裸片视频免费 | 曰批美女免费视频播放 | 国产精品第44页 | 国产午夜在线观看视频播放 | 国产91香蕉在线精品 | 欧美a级黄色片 | 国产大片喷水在线在线视频 | 九九精品视频一区在线 | 亚洲加勒比久久88色综合 | 日韩第一页 | 青青热久免费精品视频在线观看 | 国产精品成人在线播放 | 国产麻豆精品在线 | 久久香蕉国产线看观看精品蕉 | 亚洲第一页视频 | 女人毛片a级大学毛片免费 女人毛片在线 | 婷婷在线网站 | 国产精品第9页 | 欧美人一级淫片a免费播放 欧美人七十二式性视频教程一 | 国产精品视频一区二区三区不卡 | 国产在线19禁免费观看国产 | 黄色片网站免费在线观看 | xxxx久久| 国产91久久最新观看地址 | 日韩字幕无线乱码 | 日本 欧美 在线 | 成年女人免费看片 | 国产香蕉91tv永久在线 | 亚洲视频一区在线播放 | 免费一级毛片在线播放不收费 | 亚洲精品一区二区三区在线看 | 欧美成人午夜免费完成 | 精品国产福利在线 | 国产精品欧美在线 | 黄色一级片在线免费观看 | 久久综合九色综合欧美播 | 美国一级片在线 | 成人免费激情视频 | 国产成人午夜精品免费视频 |