python爬取有道翻译代码

输入英文翻译import requests,random,timefrom hashlib import md5# 获取salt sign tsdef get_salt_sign_ts(word): # ts ts = str(int(time.time()*1000)) # salt salt = ts + str(random.randint(0,9)) # si...
摘要由CSDN通过智能技术生成

输入英文翻译

import requests,random,time
from hashlib import md5

# 获取salt sign ts
def get_salt_sign_ts(word):
  # ts
  ts = str(int(time.time()*1000))
  # salt
  salt = ts + str(random.randint(0,9))
  # sign
  string ="fanyideskweb" + word + salt + "n%A-rKaT5fb[Gy?;N5@Tj"
  s = md5()
  s.update(string.encode())
  sign = s.hexdigest()

  return salt,ts,sign



# 破解有道
def attack_yd(word):
  salt,ts,sign = get_salt_sign_ts(word)
  # url地址为: F12->Headers->General ->Request URL
  url = 'http://fanyi.youdao.com/translate_o?smartresult=dict&smartresult=rule'
  # headers
  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": "238",
    "Content-Type": "application/x-www-form-urlencoded; charset=UTF-8",
    "Cookie": "OUTFOX_SEARCH_USER_ID=995734199@10.169.0.83; OUTFOX_SEARCH_USER_ID_NCOO=1015765534.714534; _ntes_nnid=f1fd183c577ec5780be4b2f48f75504c,1565763232318; JSESSIONID=aaaxX1HVxKuMBd0WefyYw; ___rl__test__cookies=1565921469152",
    "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/73.0.3683.75 Safari/537.36",
    "X-Requested-With": "XMLHttpRequest",
  }
  # data:FormData为字典
  data = {
    "i": word,
    "from": "AUTO",
    "to": "AUTO",
    "smartresult": "dict",
    "client": "fanyideskweb",
    "salt": salt,
    "sign": sign,
    "ts": "1565921469156",
    "bv": "65313ac0ff6808a532a1d4971304070e",
    "doctype": "json",
    "version": "2.1",
    "keyfrom": "fanyi.web",
    "action": "FY_BY_REALTlME",
  }
  html_json = requests.post(
    url= url,
    data =data,
    headers =headers
  ).json()
  # html_json 获得
  """{'translateResult': [[{'tgt': '你好', 'src': 'hello'}]],
 'errorCode': 0, 'type': 'en2zh-CHS',
  'smartResult': {'entries': ['', 'n. 表示问候, 惊奇或唤起注意时的用语\r\n', 
  'int. 喂;哈罗\r\n', 'n. (Hello)人名;(法)埃洛\r\n'], 'type': 1}}
  """
  # 解析得到 result
  result =html_json ['translateResult'][0][0]['tgt']
  return result


if __name__=='__main__':
  word = input('请输入要翻译的单词')
  res = attack_yd(word)
  print(res)

  • 0
    点赞
  • 1
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值