鱼C论坛

 找回密码
 立即注册
查看: 1243|回复: 3

[已解决]第54可爬虫修养课上的代码练习

[复制链接]
发表于 2021-9-14 21:14:14 | 显示全部楼层 |阅读模式

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

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

x
我按照视频课上的方法,找到了有道的 Form Data,但好像和课堂上有些不一样。
运行下来也得不到翻译的结果,但程序也没报错,这是为什么???
  1. import urllib.request
  2. import urllib.parse

  3. url = 'https://fanyi.youdao.com/translate_o?smartresult=dict&smartresult=rule'
  4. data = {}
  5. data['i'] = 'For lovely eyes, seek out the good in people.'
  6. data['from']= 'AUTO'
  7. data['to']= 'AUTO'
  8. data['smartresult']= 'dict'
  9. data['client']= 'fanyideskweb'
  10. data['salt']= '16315470681987'
  11. data['sign']= 'd6b63a7371c65430a325ca72e9cef1dd'
  12. data['lts']= '1631547068198'
  13. data['bv']= '5912a9bc00e8093f5992b73a3708e1b5'
  14. data['doctype']= 'json'
  15. data['version']= '2.1'
  16. data['keyfrom']= 'fanyi.web'
  17. data['action']= 'FY_BY_CLICKBUTTION'

  18. data = urllib.parse.urlencode(data).encode('utf-8')   #encode('utf-8') 编码转换成utf-8形式

  19. response = urllib.request.urlopen(url,data)

  20. html = response.read().decode('utf-8')          #以utf-8去解码,

  21. print(html)
复制代码

最佳答案
2021-9-14 21:48:22
因为有道翻译反爬虫机制,把translate_o?的_o去掉就可以了
小甲鱼最新课程 -> https://ilovefishc.com
回复

使用道具 举报

发表于 2021-9-14 21:48:22 | 显示全部楼层    本楼为最佳答案   
因为有道翻译反爬虫机制,把translate_o?的_o去掉就可以了
小甲鱼最新课程 -> https://ilovefishc.com
回复 支持 反对

使用道具 举报

发表于 2021-9-14 22:06:50 | 显示全部楼层
教程是好多年前的了,现在有道加了反爬机制,传的参数都是要加密的。
去 油。管 上面搜 js爬虫案例,上面有比较新的案例。
如果刚开始学爬虫可以按二楼那样去体验一下,但是毕竟接口不是这个,直接改接口会出现各种各样的问题,想得到较好的翻译体验还是得加密参数的。
加密可以 python 模拟加密,也可以直接把加密这段 js 代码挖下来,怎么方便怎么来咯,看你喜欢哪种了。
小甲鱼最新课程 -> https://ilovefishc.com
回复 支持 1 反对 0

使用道具 举报

 楼主| 发表于 2021-9-14 22:26:37 | 显示全部楼层
白two 发表于 2021-9-14 22:06
教程是好多年前的了,现在有道加了反爬机制,传的参数都是要加密的。
去 油。管 上面搜 js爬虫案例,上面 ...

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

使用道具 举报

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

本版积分规则

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

GMT+8, 2025-6-18 16:03

Powered by Discuz! X3.4

© 2001-2023 Discuz! Team.

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