逆向前期准备

环境安装

  • pip install PyExecJS(自己pip安装,安装成功后,最好重启下cmd终端和pycharm,或者重启电脑)
  • 安装node.js开发环境:安装好了之后,记得重启电脑!
  • js改写工具

PyExecJS介绍

  • PyExecJS 是一个可以使用 Python 来模拟运行 JavaScript 的库。

    • 使用该模块可以通过python程序调用执行js代码,获取js代码返回的结果!
    • 注意事项:电脑必须安装好了nodejs开发环境上述模块才可以生效!
  • 使用步骤:
    • 导包:

      • import execjs
    • 创建node对象:
      • node = execjs.get()
    • 编译即将被执行的js代码对应的文件,返回上下文对象ctx
      • fp = open(filePath,encoding='utf-8')
      • ctx = node.compile(fp.read())
    • 生成要执行的js函数调用的字符串形式
      • funName = 'getPwd("xxx")'
    • 基于ctx调用eval函数,模拟执行funName表示的js函数
      • result = ctx.eval(funName)
#1.导包
import execjs
#2.创建node对象
node = execjs.get()
#3.编译js文件返回上下文ctx对象(将js文件中的代码读取出来,被compile进行编译)
fp = open('test.js','r',encoding='utf-8')
ctx = node.compile(fp.read())
#4.使用上下文对象ctx调用eval函数执行js文件中的指定函数即可
result = ctx.eval('getPwd("123456")')
print(result)

最新文章

  1. xpath提取多个标签下的text
  2. 无cookie下载Oracle otn上的sun jdk等软件
  3. Quartz.net 定式调度任务
  4. Windows批处理:自动检查网络连通性
  5. 响应式布局(Responsive layout,RL)的简单Demo
  6. Mysql的一些小知识点
  7. iOS开发——UI篇Swift篇&UIActivityIndicatorView
  8. 自学JAVA总结
  9. WebService学习笔记系列(三)
  10. centos 6.5 安装weixin
  11. 安装weblogic的步骤10.3.0.0
  12. java系列--JDBC连接oracle
  13. css隐藏文字的小技巧
  14. “Validation failed for one or more entities”异常的解决办法
  15. next()方法 执行下一个中间件 类似than
  16. 绕过PALOALTO TRAPS EDR解决方案
  17. 《机器学习实战》之k-近邻算法(改进约会网站的配对效果)
  18. sql2008破解加密存储过程
  19. Confluence 6 嵌套用户组的示例
  20. 第9课 const和volatile分析

热门文章

  1. overflow_auto在flex_1的容器失效
  2. MongoDB从入门到实战之Docker快速安装MongoDB
  3. MQ系列9:高可用架构分析
  4. mysql 1366 - Incorrect string value
  5. python进阶之路12之有参装饰器、多层语法糖、递归函数简介
  6. CTF-MISC比赛技巧总结(一)
  7. [WPF]数据绑定Demo
  8. visualstudio2017 community版本,有点失去信心了,同样两行代码,外观看不出任何区别,但是一个报错
  9. A+B Problem C++
  10. Lamdba表达式的无参数无返回值的练习-Lambda表达式有参数有返回值的练习