鱼C论坛

 找回密码
 立即注册
查看: 814|回复: 7

[已解决]请问看了小甲鱼爬虫有道翻译代码{"errorCode":50}

[复制链接]
发表于 2020-3-19 18:05:04 | 显示全部楼层 |阅读模式

马上注册,结交更多好友,享用更多功能^_^

您需要 登录 才可以下载或查看,没有账号?立即注册

x
本帖最后由 落叶孤尘 于 2020-3-19 18:48 编辑

请问 有什么处理方法么,跟着视频敲的代码。。

代码如下:
import urllib.request
import urllib.parse
import json

content = input("请输入需要翻译的内容:")

url = 'http://fanyi.youdao.com/translate_o?smartresult=dict&smartresult=rule'

head = {}
head['User-Agent'] = 'Mozilla/5.0 (Windows NT 6.1; WOW64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/78.0.3904.108 Safari/537.36'

data={}
data['i'] = content
data['doctype'] = '2.1'
data['from'] = 'AUTO'
data['to'] = 'AUTO'
data['smartresult'] = 'dict'
data['client'] = 'fanyideskweb'
data['salt'] = '15844816425410'
data['sign'] = 'd1d61b8ed4b161182f2af9d3f29529c5'
data['ts'] = '1584373845360'
data['bv'] = 'acc97416ef67184f42e5a4a03c3d52ab'
data['version'] = 'json'
data['keyfrom'] = 'fanyi.web'
data['action'] = 'FY_BY_REALTlME'

data = urllib.parse.urlencode(data).encode('utf-8')


req = urllib.request.Request(url,data,head)
response = urllib.request.urlopen(req)
html = response.read().decode('utf-8')

target = json.loads(html)
print("翻译结果: %s" % (translateResult[0][0]['tgt']))
最佳答案
2020-3-20 08:01:26
这样试试:
import urllib.request
import urllib.parse
import json

content = input("请输入需要翻译的内容:")

url = 'http://fanyi.youdao.com/translate?smartresult=dict&smartresult=rule'

head = {}
head['User-Agent'] = 'Mozilla/5.0 (Windows NT 6.1; WOW64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/78.0.3904.108 Safari/537.36'

data = {}
data['i'] = content
data['doctype'] = 'json'
data['from'] = 'AUTO'
data['to'] = 'AUTO'
data['client'] = 'fanyideskweb'

data = urllib.parse.urlencode(data).encode('utf-8')

req = urllib.request.Request(url, data, head)
response = urllib.request.urlopen(req)
html = response.read().decode()
print(html)
target = json.loads(html)
print("翻译结果: %s" % (target['translateResult'][0][0]['tgt']))
想知道小甲鱼最近在做啥?请访问 -> ilovefishc.com
回复

使用道具 举报

发表于 2020-3-19 18:06:41 | 显示全部楼层
把代码发上来!!
想知道小甲鱼最近在做啥?请访问 -> ilovefishc.com
回复 支持 反对

使用道具 举报

发表于 2020-3-19 18:15:32 | 显示全部楼层
加一个headers就好了
想知道小甲鱼最近在做啥?请访问 -> ilovefishc.com
回复 支持 反对

使用道具 举报

发表于 2020-3-19 18:40:18 | 显示全部楼层
加个 headers 或者换个 headers
想知道小甲鱼最近在做啥?请访问 -> ilovefishc.com
回复 支持 反对

使用道具 举报

 楼主| 发表于 2020-3-19 22:42:05 | 显示全部楼层
zltzlt 发表于 2020-3-19 18:06
把代码发上来!!

发上来了。
想知道小甲鱼最近在做啥?请访问 -> ilovefishc.com
回复 支持 反对

使用道具 举报

发表于 2020-3-20 08:01:26 | 显示全部楼层    本楼为最佳答案   
这样试试:
import urllib.request
import urllib.parse
import json

content = input("请输入需要翻译的内容:")

url = 'http://fanyi.youdao.com/translate?smartresult=dict&smartresult=rule'

head = {}
head['User-Agent'] = 'Mozilla/5.0 (Windows NT 6.1; WOW64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/78.0.3904.108 Safari/537.36'

data = {}
data['i'] = content
data['doctype'] = 'json'
data['from'] = 'AUTO'
data['to'] = 'AUTO'
data['client'] = 'fanyideskweb'

data = urllib.parse.urlencode(data).encode('utf-8')

req = urllib.request.Request(url, data, head)
response = urllib.request.urlopen(req)
html = response.read().decode()
print(html)
target = json.loads(html)
print("翻译结果: %s" % (target['translateResult'][0][0]['tgt']))
想知道小甲鱼最近在做啥?请访问 -> ilovefishc.com
回复 支持 反对

使用道具 举报

 楼主| 发表于 2020-3-20 14:03:37 | 显示全部楼层

谢谢谢谢。为什么去掉一些参数就可以了呀。。
想知道小甲鱼最近在做啥?请访问 -> ilovefishc.com
回复 支持 反对

使用道具 举报

发表于 2020-4-10 17:11:20 | 显示全部楼层
把url里的_o去掉试试     url = 'http://fanyi.youdao.com/translate_o?smartresult=dict&smartresult=rule' 改成 url = 'http://fanyi.youdao.com/translate?smartresult=dict&smartresult=rule'
想知道小甲鱼最近在做啥?请访问 -> ilovefishc.com
回复 支持 反对

使用道具 举报

您需要登录后才可以回帖 登录 | 立即注册

本版积分规则

小黑屋|手机版|Archiver|鱼C工作室 ( 粤ICP备18085999号-1 | 粤公网安备 44051102000585号)

GMT+8, 2024-11-26 05:53

Powered by Discuz! X3.4

© 2001-2023 Discuz! Team.

快速回复 返回顶部 返回列表