import execjs,requests,re headers = { 'User-Agent': 'Mozilla/5.0 (Windows NT 10.0; Win64; x64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/99.0.4844.82 Safari/537.36', } session = requests.Session() session.headers =headers def get_token_gtk(): url = "https://fanyi.baidu.com/" token = '' gtk = '' for _ in range(3): response = session.get(url) data = response.text token = re.findall("token: '(.*?)'", data)[0] gtk = re.findall("window.gtk = '(.*?)'", data)[0] return token, gtk def get_sign(): with open("sign.js","r") as f: js=f.read() return execjs.compile(js) sign=get_sign() def translate(query): token, gtk = get_token_gtk() sign_data = sign.call("e",query,gtk) form_data = { 'from': 'zh', 'to': 'en', 'query':query, 'transtype': 'realtime', 'simple_means_flag': '3', 'sign': sign_data, 'token': token, 'domain': 'common', } url = 'https://fanyi.baidu.com/v2transapi?from=zh&to=en' response = session.post(url, data=form_data) result = re.findall('"dst":"(.*?)"', response.text)[0] print(result) return result if __name__ == '__main__': my_str = input("输入需要翻译的中文:") translate(my_str)
实战项目代码
最新推荐文章于 2024-07-11 19:45:38 发布