鱼C论坛

 找回密码
 立即注册
查看: 3390|回复: 5

小甲鱼的爬虫出现{"errorCode":50}改进后的疑问

[复制链接]
发表于 2017-10-4 18:15:41 | 显示全部楼层 |阅读模式

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

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

x
按照小甲鱼老师的爬虫代码实现之后出现{"errorCode":50}的错误,通过在网上找资源发现是有道采用了反爬技术,在表单数据上加了salt和sign用来加密,通过查找它的.js代码,找到了他的加密规则,并用py对接上了它的接口,但还是会报错误,又在贴吧上看到有人说把url中的_o去掉,结果行了!!!
虽然很高兴,但是还是不明白为什么去掉_o之后就行了??有没有高人指点下?

  1. from urllib import request
  2. from urllib import parse
  3. import random
  4. import time
  5. import hashlib
  6. import json

  7. content = input('你要翻译啥?')
  8. salt = str(time.time()*1000 + random.randint(0,9))
  9. b = "fanyideskweb"
  10. c = "rY0D^0'nM0}g5Mm1z%1G4"
  11. sign = hashlib.md5((b+content+salt+c).encode('utf-8')).hexdigest()

  12. url = 'http://fanyi.youdao.com/translate?smartresult=dict&smartresult=rule'
  13. data = {}
  14. data['i'] = content
  15. data['from'] = 'AUTO'
  16. data['to'] = 'AUTO'
  17. data['smartresult'] = 'dict'
  18. data['client'] = 'fanyideskweb'
  19. data['salt'] = salt
  20. data['sign'] = sign
  21. data['doctype'] = 'json'
  22. data['version'] = '2.1'
  23. data['keyfrom'] = 'fanyi.web'
  24. data['action'] = 'FY_BY_CLICKBUTTION'
  25. data['typoResult'] = 'true'


  26. data  = parse.urlencode(data).encode('utf-8')
  27. response = request.urlopen(url,data)
  28. result = response.read().decode('utf-8')
  29. # print(result)

  30. target = json.loads(result)
  31. print('结果是:%s'%target['translateResult'][0][0]['tgt'])
复制代码

小甲鱼最新课程 -> https://ilovefishc.com
回复

使用道具 举报

发表于 2017-10-4 20:49:08 | 显示全部楼层
这是一个没有伪装的api
小甲鱼最新课程 -> https://ilovefishc.com
回复 支持 反对

使用道具 举报

发表于 2017-10-4 20:49:31 | 显示全部楼层
可以直接调用
但是有道发现调用的人太多了
就改了
小甲鱼最新课程 -> https://ilovefishc.com
回复 支持 反对

使用道具 举报

 楼主| 发表于 2017-10-4 20:56:48 | 显示全部楼层
新手·ing 发表于 2017-10-4 20:49
可以直接调用
但是有道发现调用的人太多了
就改了

能说说为什么url地址去掉_o之后就行了吗?
小甲鱼最新课程 -> https://ilovefishc.com
回复 支持 反对

使用道具 举报

发表于 2017-10-4 21:01:14 | 显示全部楼层
tassel 发表于 2017-10-4 20:56
能说说为什么url地址去掉_o之后就行了吗?

你看看小甲鱼老师那个版本找到的地址有没有_o
如果没有,只能说用的还是以前的
小甲鱼最新课程 -> https://ilovefishc.com
回复 支持 反对

使用道具 举报

 楼主| 发表于 2017-10-8 20:27:03 | 显示全部楼层
新手·ing 发表于 2017-10-4 21:01
你看看小甲鱼老师那个版本找到的地址有没有_o
如果没有,只能说用的还是以前的

谢谢
小甲鱼最新课程 -> https://ilovefishc.com
回复 支持 反对

使用道具 举报

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

本版积分规则

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

GMT+8, 2025-12-24 07:30

Powered by Discuz! X3.4

© 2001-2023 Discuz! Team.

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