python爬取有道翻译出错 {‘errorcode’:50}
2017-12-19 14:55
357 查看
在用urllib对有道翻译进行爬取时,出现了错误。
import urllib.request
import urllib.parse
import json
content = input("Enter the words needs translated:")
url = "http://fanyi.youdao.com/translate?smartresult=dict&smartresult=ugc"
data = {}
data['i'] = content
data['from'] = 'AUTO'
data['to']='AUTO'
data['smartresult']='dict'
data['client']='fanyideskweb'
data['salt']='1513663501217'
data['sign']='6a516734349a812792c07491f639609e'
data['doctype'] = 'json'
data['version'] = '2.1'
data['keyfrom']='fanyi.web'
data['action']='FY_BY_REALTIME'
data['typoResult']='false'
data = urllib.parse.urlencode(data).encode('utf-8')
response = urllib.request.urlopen(url,data)
html = response.read().decode('utf-8')
target = json.loads(html)
print("result: %s" % (target['translateResult'][0][0]['tgt']))
将在审查元素中获得的url中translate后面的_o去掉,错误就消失了,可以正常爬取。不知道为什么
刚刚又试了一下,data除了doctype键和i键不能去掉,其余的即使删除了也能正常运行翻译。
import urllib.request
import urllib.parse
import json
content = input("Enter the words needs translated:")
url = "http://fanyi.youdao.com/translate?smartresult=dict&smartresult=ugc"
data = {}
data['i'] = content
data['from'] = 'AUTO'
data['to']='AUTO'
data['smartresult']='dict'
data['client']='fanyideskweb'
data['salt']='1513663501217'
data['sign']='6a516734349a812792c07491f639609e'
data['doctype'] = 'json'
data['version'] = '2.1'
data['keyfrom']='fanyi.web'
data['action']='FY_BY_REALTIME'
data['typoResult']='false'
data = urllib.parse.urlencode(data).encode('utf-8')
response = urllib.request.urlopen(url,data)
html = response.read().decode('utf-8')
target = json.loads(html)
print("result: %s" % (target['translateResult'][0][0]['tgt']))
将在审查元素中获得的url中translate后面的_o去掉,错误就消失了,可以正常爬取。不知道为什么
刚刚又试了一下,data除了doctype键和i键不能去掉,其余的即使删除了也能正常运行翻译。
相关文章推荐
- Python爬虫 ————POST请求有道翻译{"errorcode":50}
- [python]用eval强制将字符串转换为字典变量时候出错:NameError: name 'null' is not defined[python]用eval函数 字符串转dict
- 用python调用ICTCLAS50进行中文分词
- Python中用json.loads解码字符串出错:ValueError: No JSON object could be decoded
- 安装Python的机器学习包Sklearn 出错解决方法
- Windows下使用命令安装Python的scipy库出错的解决
- python中打开含中文的文件路径出错的情况
- Learn Python The Hard Way学习(50) - 你的第一个网站
- python web py入门(11)- 双重查询访问MYSQL数据库出错
- Python安装模块出错(ImportError: No module named setuptools)解决方法
- 打印当前python文件出错行
- Python 3.6在Linux上安装出错
- Python3.x中,使用print时出错(SyntaxError: Missing parentheses in call to 'print')解决办法
- python 3.4.0 简单的print 'hello world',出错--SyntaxError: invalid syntax
- pip升级出错解决方法ReadTimeoutError: HTTPSConnectionPool(host='pypi.python.org', port=443): Read ti med out.
- Windows 64位安装Python numpy 安装后导入出错
- caffe : /wrap_python.hpp:50:23: fatal error: pyconfig.h: No such file or dir
- python 里安装 tensorflow 后运行出错的问题解决
- 【已解决】Python中使用cookielib的FileCookieJar去save(),结果出错:NotImplementedError
- python3.5中urlopen出错