|
发表于 2018-6-30 13:27:31
|
显示全部楼层
有道词典解决反爬之后
- import urllib.request as urr
- import urllib.parse as urp
- import json
- import time
- import random
- import hashlib
- content = input('请输入要翻译的句子:')
- url = 'http://fanyi.youdao.com/translate?smartresult=dict&smartresult=rule'
- data = {}
- t = content
- r = str(int(time.time()*1000) + random.randint(1,10))
- i = hashlib.md5(('fanyideskweb' + t + r + 'bSeFb%=XZ%T[KZ)c(sy!').\
- encode('utf-8')).hexdigest()
- data['i'] = content
- data['from'] = 'AUTO'
- data['to'] = 'AUTO'
- data['smartresult'] = 'dict'
- data['client'] = 'fanyideskweb'
- data['salt'] = r
- data['sign'] = i
- data['doctype'] = 'json'
- data['version'] = '2.1'
- data['keyfrom'] = 'fanyi.web'
- data['action'] = 'FY_BY_REALTIME'
- data['typoResult'] = 'false'
- data = urp.urlencode(data).encode('utf-8')
- response = urr.urlopen(url,data)
- html = response.read().decode('utf-8')
- target = json.loads(html)
- print('翻译结果:%s'%(target['translateResult'][0][0]['tgt']))
- #Ultraman dozen small monster
复制代码 |
|