品易云推流 关闭
文章详情页
文章 > Python高级 > python如何调用js代码?

python如何调用js代码?

头像

2020-12-19 15:50:354007浏览 · 0收藏 · 0评论

python调用js代码.png

python调用js代码比较好用的方法是使用第三方库pyexecjs,这个库可以用python运行JavaScript代码。

实现方式:
在本地 JS 环境下运行 JS 代码
PS:支持的 JS 环境包含:Node.js、PyV8、PhantomJS、Nashorn 等
1.安装依赖包 PyExecJS
//py_exec_js_demo.py

//安装依赖
pip3 install PyExecJS
2.从 JS 文件中读取源码
def js_from_file(file_name):
    """
    读取js文件
    :return:
    """
    with open(file_name, 'r', encoding='UTF-8') as file:
        result = file.read()

    return result
3.使用 execjs 类的compile()方法编译加载上面的 JS 字符串,返回一个上下文对象
import execjs

from js_code import *

# 编译加载js字符串
context1 = execjs.compile(js_from_file('./norm.js'))

4.调用上下文对象的call() 方法执行 JS 方法其中参数包含:JS 代码被调的方法名、对应方法的传入参数

# 调用js代码中的add()方法,参数为2和3
# 方法名:add
# 参数:2和3
result1 = context1.call("add", 2, 3)

print(result1)
需要注意:js代码返回的字符串如果有特殊字符的话可能会出错。
解决方法:先将字符串进行base64编码后再返回。
function a(str) {
    return new Buffer(str).toString("base64");
}
关注

关注公众号,随时随地在线学习

本教程部分素材来源于网络,版权问题联系站长!

底部广告图