Python3网络爬虫教程8——有道在线翻译项目(JS加密)

2024-06-04 18:08

本文主要是介绍Python3网络爬虫教程8——有道在线翻译项目(JS加密),希望对大家解决编程问题提供一定的参考价值,需要的开发者们随着小编来一起学习吧!

上接:
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, parseif __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

下接:
Python3网络爬虫教程9——有道在线翻译项目(破解JS加密过程)
https://blog.csdn.net/u011318077/article/details/86592160

这篇关于Python3网络爬虫教程8——有道在线翻译项目(JS加密)的文章就介绍到这儿,希望我们推荐的文章对编程师们有所帮助!



http://www.chinasem.cn/article/1030732

相关文章

SpringBoot项目中报错The field screenShot exceeds its maximum permitted size of 1048576 bytes.的问题及解决

《SpringBoot项目中报错ThefieldscreenShotexceedsitsmaximumpermittedsizeof1048576bytes.的问题及解决》这篇文章... 目录项目场景问题描述原因分析解决方案总结项目场景javascript提示:项目相关背景:项目场景:基于Spring

解决Maven项目idea找不到本地仓库jar包问题以及使用mvn install:install-file

《解决Maven项目idea找不到本地仓库jar包问题以及使用mvninstall:install-file》:本文主要介绍解决Maven项目idea找不到本地仓库jar包问题以及使用mvnin... 目录Maven项目idea找不到本地仓库jar包以及使用mvn install:install-file基

如何为Yarn配置国内源的详细教程

《如何为Yarn配置国内源的详细教程》在使用Yarn进行项目开发时,由于网络原因,直接使用官方源可能会导致下载速度慢或连接失败,配置国内源可以显著提高包的下载速度和稳定性,本文将详细介绍如何为Yarn... 目录一、查询当前使用的镜像源二、设置国内源1. 设置为淘宝镜像源2. 设置为其他国内源三、还原为官方

springboot项目如何开启https服务

《springboot项目如何开启https服务》:本文主要介绍springboot项目如何开启https服务方式,具有很好的参考价值,希望对大家有所帮助,如有错误或未考虑完全的地方,望不吝赐教... 目录springboot项目开启https服务1. 生成SSL证书密钥库使用keytool生成自签名证书将

Maven的使用和配置国内源的保姆级教程

《Maven的使用和配置国内源的保姆级教程》Maven是⼀个项目管理工具,基于POM(ProjectObjectModel,项目对象模型)的概念,Maven可以通过一小段描述信息来管理项目的构建,报告... 目录1. 什么是Maven?2.创建⼀个Maven项目3.Maven 核心功能4.使用Maven H

将Java项目提交到云服务器的流程步骤

《将Java项目提交到云服务器的流程步骤》所谓将项目提交到云服务器即将你的项目打成一个jar包然后提交到云服务器即可,因此我们需要准备服务器环境为:Linux+JDK+MariDB(MySQL)+Gi... 目录1. 安装 jdk1.1 查看 jdk 版本1.2 下载 jdk2. 安装 mariadb(my

IDEA自动生成注释模板的配置教程

《IDEA自动生成注释模板的配置教程》本文介绍了如何在IntelliJIDEA中配置类和方法的注释模板,包括自动生成项目名称、包名、日期和时间等内容,以及如何定制参数和返回值的注释格式,需要的朋友可以... 目录项目场景配置方法类注释模板定义类开头的注释步骤类注释效果方法注释模板定义方法开头的注释步骤方法注

JS+HTML实现在线图片水印添加工具

《JS+HTML实现在线图片水印添加工具》在社交媒体和内容创作日益频繁的今天,如何保护原创内容、展示品牌身份成了一个不得不面对的问题,本文将实现一个完全基于HTML+CSS构建的现代化图片水印在线工具... 目录概述功能亮点使用方法技术解析延伸思考运行效果项目源码下载总结概述在社交媒体和内容创作日益频繁的

Node.js 数据库 CRUD 项目示例详解(完美解决方案)

《Node.js数据库CRUD项目示例详解(完美解决方案)》:本文主要介绍Node.js数据库CRUD项目示例详解(完美解决方案),本文给大家介绍的非常详细,对大家的学习或工作具有一定的参考... 目录项目结构1. 初始化项目2. 配置数据库连接 (config/db.js)3. 创建模型 (models/

python3 gunicorn配置文件的用法解读

《python3gunicorn配置文件的用法解读》:本文主要介绍python3gunicorn配置文件的使用,具有很好的参考价值,希望对大家有所帮助,如有错误或未考虑完全的地方,望不吝赐教... 目录python3 gunicorn配置文件配置文件服务启动、重启、关闭启动重启关闭总结python3 gun