PyExecJS介绍
- PyExecJS 是一个可以使用 Python 来模拟运行 JavaScript 的库。
- 使用该模块可以通过python程序调用执行js代码,获取js代码返回的结果!
- 注意事项:电脑必须安装好了nodejs开发环境上述模块才可以生效!
- 环境安装:
- 使用步骤:
- 导包:
- 创建node对象:
- 编译即将被执行的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)
.py文件
#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)
.js文件
//test.js
function getPwd(pwd){
return pwd;
}