国产成人精品久久免费动漫-国产成人精品天堂-国产成人精品区在线观看-国产成人精品日本-a级毛片无码免费真人-a级毛片毛片免费观看久潮喷

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

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

瀏覽:73日期: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; OUTFOX_SEARCH_USER_ID=833904829@10.169.0.84; OUTFOX_SEARCH_USER_ID_NCOO=1846816080.1245883; fanyi-ad-id=39535; fanyi-ad-closed=1; JSESSIONID=aaaYuYbMKHEJQ7Hanizdw; ___rl__test__cookies=1515471316884’}head[’Cookie’] = ’OUTFOX_SEARCH_USER_ID=833904829@10.169.0.84; 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 編程
相關文章:
主站蜘蛛池模板: 欧美 亚洲 在线 | α片毛片 | 天堂在线www网亚洲 天堂在线视频网站 | 日本一区二区三区欧美在线观看 | 大焦伊人 | 国产美女一区二区在线观看 | 一级国产a级a毛片无卡 | 亚洲在线免费视频 | 国产一级成人毛片 | 九九国产在线观看 | 免费一级在线观看 | 成人免费毛片网站 | 国产三片高清在线观看 | 国产精品私人玩物在线观看 | 波多野结衣一区二区 | 欧美一级毛片免费大片 | 极品色在线精品视频 | 日韩一级片免费在线观看 | 国产一区二区三区在线看 | 亚洲福利精品一区二区三区 | 欧美成人免费xxx大片 | 欧美一级在线全免费 | 欧美一级看片a免费观看 | 国产草草影院ccyycom软件 | 在线看片 在线播放 | 91色视| 日韩欧美高清在线观看 | 农村寡妇野外情一级毛片 | 免费播放欧美毛片欧美aaaaa | 亚洲欧美一区二区三区久本道 | 欧美顶级毛片在线播放 | 青青热久久国产久精品 | 女人张开腿让男人桶免费网站 | 欧美极品在线 | 99久久免费国产精品 | 日本美女视频韩国视频网站免费 | 在线免费看黄色 | 在线亚洲精品国产成人二区 | 美女扒开腿让男人桶爽免费动态图 | 亚洲国产精品一区二区不卡 | 国产亚洲欧美另类久久久 |