初期操作
打开有道翻译界面—F12—Network—在翻译框中输入'hello'—在Network下面发现名为'translate_o?smartresult......'返回翻译之后的数据
分析参数
把所有的Request Headers、params都写上尝试爬虫,可以得到结果。
然后Request Headers中Headers、Host、Origin、Referer三项留下,Cookie一项经尝试只有 OUTFOX_SEARCH_USER_ID=-1927650476@223.97.13.65;会验证而且尝试多次之后我这里是没有变化的。
Accept: application/json, text/javascript, */*; q=0.01Accept-Encoding: gzip, deflateAccept-Language: zh-CN,zh;q=0.9Connection: keep-aliveContent-Length: 252Content-Type: application/x-/', 'User-Agent': 'Mozilla/5.0 (Windows NT 10.0; Win64; x64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/88.0.4324.146 Safari/537.36', } data = { 'i': str(content), 'from': 'AUTO', 'to': 'AUTO', 'smartresult': 'dict', 'client': 'fanyideskweb', 'salt': str(salt), 'sign': str(sign), # 'lts': '1612879546052', # 'bv': '6a1ac4a5cc37a3de2c535a36eda9e149', # 'doctype': 'json', 'version': '2.1', 'keyfrom': 'fanyi.web', 'action': 'FY_BY_REALTlME', } res = requests.post(url=url, headers=headers, data=data).json() print('翻译后:', res['translateResult'][0][0]['tgt']) print('翻译前:', res['translateResult'][0][0]['src'])if __name__ == '__main__': content, salt, sign = get_data() send_request(content, salt, sign)运行效果
以上就是python 实现有道翻译的详细内容,更多关于python 有道翻译的资料请关注其它相关文章!