当前位置: 首页 > news >正文

网站建设的可行性分析百度推广外包

网站建设的可行性分析,百度推广外包,WordPress类似INN的祝图,招工网站58同城JS的解析与Js2Py使用 JS的解析事件监听器搜索关键字请求关联JS文件 Js2PyJs2Py的简单使用安装Js2Py执行JavaScript代码调用JavaScript函数 Js2Py的应用示例创建JavaScript文件使用JavaScript JS的解析 在一个网站中,登录密码通常是会进行加密操作的,那么…

JS的解析与Js2Py使用

  • JS的解析
    • 事件监听器
    • 搜索关键字
    • 请求关联JS文件
  • Js2Py
  • Js2Py的简单使用
    • 安装Js2Py
    • 执行JavaScript代码
    • 调用JavaScript函数
  • Js2Py的应用示例
    • 创建JavaScript文件
    • 使用JavaScript

JS的解析

在一个网站中,登录密码通常是会进行加密操作的,那么在Python中如何使用账号密码登录就成了一个问题,因为密码需要被加密发送到后端服务器。

此时就可以进行JS解析,通过分析JS文件就可以知道:每个按钮,每个事件、每个请求对应的JS文件,即需要确定JS文件的位置,然后分析JS代码确定执行逻辑。

JS的解析可以从三方面入手:事件监听器、搜索关键字、请求关联JS文件

事件监听器

观察按钮的绑定js事件,如确定的submit事件。

在这里插入图片描述
点击事件关联的JS文件,如:search-sug_653d65d.js,然后自动跳转到JS文件
在这里插入图片描述
找到JS具体位置之后,打断点,观察分析JS的执行逻辑 在这里插入图片描述

搜索关键字

如果网站中的某个按钮没有绑定js事件监听,那么可以通过搜索请求中的关键字来找到js的位置

点击百度一下发起请求,得到请求URL,打开搜索
在这里插入图片描述

在搜索中输入请求地址关键字进行搜索,点击搜索结果跳转到相应JS文件。

在这里插入图片描述

请求关联JS文件

通常来说,当发送一个请求时,这个请求会关联一个js文件,点击进入即可进行JS代码执行流程的分析。

在这里插入图片描述

Js2Py

Js2Py是一个用于将JavaScript代码转换为Python代码的库。它提供了一种方式来在Python环境中执行JavaScript代码,可以将JavaScript函数和对象转换为Python的函数和对象,并且能够在Python中调用这些转换后的代码。

Js2Py的工作原理是将JavaScript代码解析为抽象语法树(AST),然后将该AST转换为Python的表示形式。它支持大多数的JavaScript语法和特性,并且提供了一些额外的功能来简化JavaScript到Python的转换过程。

使用Js2Py,开发者可以在Python环境中使用JavaScript函数、库和算法,从而更方便地在不同语言之间共享代码和功能。

Js2Py就是一个JavaScript的翻译工具,也是一个通过纯python实现的JavaScript的解释器

GitHub: https://github.com/PiotrDabkowski/Js2Py

Js2Py的简单使用

安装Js2Py

要使用 Js2Py,首先需要安装该库

pip install js2py

执行JavaScript代码

使用eval_js函数执行JavaScript表达式1+2,并将结果保存在result变量中。然后通过Python的print函数将结果打印出来

from js2py import eval_jsresult = eval_js('1 + 2')
print(result)  # 输出:3

调用JavaScript函数

定义一个JavaScript函数add,然后通过eval_js函数将其转换为Python函数add_func,接下来可以像在JavaScript中一样调用该函数,传入参数并获得结果。

from js2py import eval_jsjs_code = '''
function add(a, b) {return a + b;
}
'''add_func = eval_js(js_code)  # 将 JavaScript 函数转换为 Python 函数
result = add_func(3, 4)  # 在 Python 中调用 JavaScript 函数
print(result)  # 输出:7

Js2Py的应用示例

在一个网站中,登录密码通常是会进行加密操作的,那么在Python中如何使用账号密码登录就成了一个问题,因为密码需要被加密发送到后端服务器。

此时就可以通过JS分析,获取目标网站的登录过程,分析登录密码的加密过程、逻辑,在得知加密过程、逻辑后,就可以将此JS加密逻辑封装处理成一个JS文件

然后通过Js2Py将此JS代码加载到Python执行环境中,通过Python代码调用加密函数获得加密密码,以此进行登录。

创建JavaScript文件

创建js-file.js文件,用于模拟登录密码加密

function test(password) {password = password.split("").reverse().join("");return password;
}

使用JavaScript

import js2py
import requests#  获取session对象
session = requests.session()
headers = {"User-Agent": "Mozilla/5.0 (Windows NT 10.0; Win64; x64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/110.0.0.0 Safari/537.36",
}# 设置session的请求头信息
session.headers = headers# 使用js2py生成js的执行环境context
context = js2py.EvalJs()####################### 将需要用到的JS文件加载到执行环境中,有2种方式 ######################## 1.拷贝使用到js文件的内容到执行环境\项目中
with open("js-file.js", 'r', encoding='utf8') as f:context.execute(f.read())# 2.通过网络请求,读取js文件的内容,使用context来执行
# getJs = requests.get("url", headers=headers).content.decode();
# context.execute(getJs)# 向context环境中添加需要数据
context.oldPwd = {'password': "my_password"}#  执行密码加密的js函数
js = '''newPwd = test(oldPwd.password)'''
context.execute(js)# 通过context获取加密后密码信息
password = context.newPwd
print("加密前的密码:{} 加密后的密码:{}".format(context.oldPwd.password, password))# 构建请求参数
data = {'username': 'username','password': password,
}#  使用session发送登录请求
response = session.post("http://localhost:8888/user/login", data=data)
print(response.content.decode())
http://www.hengruixuexiao.com/news/22565.html

相关文章:

  • 深圳网站建设那家好营销策划书模板
  • 网站切图今日热搜前十名
  • 做哪一类的网站可以短时间变现电商代运营公司排名
  • 政府网站集约化建设规划安卓手机性能优化软件
  • 泰安搜索引擎优化招聘seo域名如何优化
  • 优门设 网站免费产品推广软件
  • 天津建设教育培训中心网站郑州网络推广
  • 一步步教会你怎么做网站大批量刷关键词排名软件
  • 东莞市建设规划局网站首页郑州网络推广大包
  • 怎么新建一个网站千锋教育前端学费多少
  • 天津网站建设制作设计seo怎么推广
  • 济宁做网站比较好的公司有哪些蚌埠seo外包
  • 网站建设受众百度搜索
  • 创意网站建设话术免费推广网址
  • 济南高新区网站建设公司网络推广渠道和方法
  • dz网站收款即时到账怎么做的长沙seo免费诊断
  • 在哪个网站做视频赚钱的竹子建站官网
  • 济南突然宣布淘宝seo搜索优化
  • 用html表格做的网站专业网站推广优化
  • wordpress怎么写网站关键词和描述seo快速优化
  • 东莞网站优化流程百度大数据查询
  • 算命 网站开发怎么免费给自己建网站
  • 行业网站策划方案爱站之家
  • 二手车网站制作贵吗中国突然宣布一重磅消息
  • 购物网站建设的可行性宣传营销方式有哪些
  • app开发网站建设公司税收大数据
  • 折800网站模板搜索指数
  • 给女友做的网站 源码今日国内新闻
  • 广东微信网站制作哪家好产品推广方式都有哪些
  • 上海手机端建站模板网络推广岗位职责和任职要求