Python3网络爬虫教程8——有道在线翻译项目(JS加密)
2019-01-18 12:59
801 查看
版权声明:本文章为沐言-BigTree原创,转载复制请标明出处 https://blog.csdn.net/u011318077/article/details/86538141
上接:
Python3网络爬虫教程7——SSL数字证书
https://blog.csdn.net/u011318077/article/details/86538116
6. js加密(有道在线翻译项目)
- 有的反爬虫策略采用js对需要传输的数据进行加密处理(通常是取md5值)
- 经过加密,传输的就是密文,但是加密函数或者过程一定是在浏览器完成,
- 也就是一定会把代码(js代码)暴露给使用者
- 通过阅读加密算法,就可以模拟出加密的过程,从而达到破解
- 43_18_1未为修改后的实例,成功实现中英,英中翻译
# Python3实现有道在线翻译案例 # 有道在线翻译http://fanyi.youdao.com/ import json from urllib import request, parse if __name__ == '__main__': key = input("请输入需要翻译的文字(输入完成后请按Enter): ") # 打开有道在线翻译,输入girl,检查,找到headers,复制里面的网址 url = 'http://fanyi.youdao.com/translate?smartresult=dict&smartresult=rule' # 将网页中的Form Data中的所有数据复制出来 # 通过调试发现,只需要其中的i对应要翻译的内容和doctype对应的数据格式 formdata = { 'i': key, 'doctype': 'json', } # formdata中的数据需要转换为bytes格式 data = parse.urlencode(formdata).encode() # 将网页中的请求头Request Headers中的数据复制出来,只需要一个用户代理即可 headers = { 'User-Agent': 'Mozilla/5.0 (Windows NT 6.1; WOW64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/39.0.2171.71', } # 请求网页 req = request.Request(url=url, data=data, headers=headers) # 返回网页 res = request.urlopen(req) # 下载导出数据 result = json.loads(res.read()) # 打印出翻译后的结果 print("\n翻译结果: " + result["translateResult"][0][0]["tgt"])
该项目实现中会遇到一些问题,
请参考:
Python3—爬虫实现有道在线翻译—(常见错误汇总及解决方法)
https://blog.csdn.net/u011318077/article/details/86536124
下接:
相关文章推荐
- python第三个小程序,终于学到爬虫了~~~,利用有道,爬出个在线翻译小程序~~~~~
- Python即时网络爬虫项目启动说明
- Cocos2d-js官方完整项目教程翻译:六、添加Chipmunk物理引擎在我们的游戏世界里
- 2018年最新Python3.6网络爬虫实战案例基础+实战+框架+分布式高清视频教程(完整版)
- 网络爬虫:基于有道的文本翻译
- 网络爬虫(六):Python中的正则表达式教程
- Python爬虫—破解JS加密的Cookie
- Python3 大型网络爬虫实战 003 — scrapy 大型静态图片网站爬虫项目实战 — 实战:爬取 169美女图片网 高清图片
- RealFlow在线教程翻译(1)——Your First Project(你的第一个项目)
- 网络爬虫:利用有道实现“语言翻译”功能
- 【备忘】最新Python3网络爬虫实战案例高清视频教程
- 用python写网络爬虫-英文翻译
- python 爬虫爬取下载网易云音乐歌单的歌曲(需要使用JS的加密方法得出params去获取下载地址)
- Python 即时网络爬虫项目: 内容提取器的定义
- 超具实战意义的Python项目课程:四周实现爬虫系统 超经典的Python零基础实战化教程
- Python即时网络爬虫项目启动说明
- 【python学习】网络爬虫——基础案例教程
- python 反反爬虫策略之js动态加密url破解
- Python大型网络爬虫项目开发实战
- 爬虫入门-爬取有道在线翻译结果(2)