当前位置:   article > 正文

python执行js

python执行js


一、PyExecJS

PyExecJS 是使用最多的一种方式,底层实现方式是:在本地 JS 环境下运行 JS 代码
调用每一次都会重新加载js, js中全局变量不会变

1. 安装

pip install PyExecJS  -i  https://pypi.tuna.tsinghua.edu.cn/simple/
  • 1

2. python执行js

读取JS代码:

with open(file_name, 'r', encoding='UTF-8') as file:
	js_code= file.read()
  • 1
  • 2

execjs 类的compile()方法编译加载上面的 JS 字符串,返回一个上下文对象

# js_code上面read的js_code
context = execjs.compile(js_code)
  • 1
  • 2

调用上下文对象的call() 方法执行 JS 方法

result = context.call("函数", "参数1", "参数2")
  • 1

需要注意的,由于 PyExecJS 运行在本地 JS 环境下,使用之前会启动 JS 环境,最终导致运行速度会偏慢

  • eval执行
    eval不能执行带;的语句
print(execjs.eval('Date.now()'))
  • 1

二、py_mini_racer

可以解决多次调用js函数,重复加载, js中修改的全局变量会变


声明:本文内容由网友自发贡献,不代表【wpsshop博客】立场,版权归原作者所有,本站不承担相应法律责任。如您发现有侵权的内容,请联系我们。转载请注明出处:https://www.wpsshop.cn/w/Monodyee/article/detail/462258
推荐阅读
相关标签
  

闽ICP备14008679号