Python调用JS的四种方法

Python 调用JS的四种方式

1、PyExecJS 方法

1)、安装PyExecJS

 

pip install PyExecJS

2)、 PyExecJS 示例

复制代码
    import execjs
    
    jsstr = '''
    function add() {
        let a = 1;
        let b = 2;
        return a+b;
    }'''
    
    js = execjs.compile(jsstr)
    
    result = js.call('add')
    # call 里面的参数第一个是js函数名称, 如果要执行的js有参数, 后面跟上参数就可以
    # 如js.call('add', 2, 3)这样
    print(result)
复制代码

2、PyV8 方法

1)、安装PyV8

 

    # 安装Pyv8,下砸对应的二进制版本
    # https://github.com/emmetio/pyv8-binaries
    # PyV8 是V8引擎的Python语言封装697以上star

 

2)、 PyV8 示例

复制代码
    
    import PyV8
    
    ctxt = PyV8.JSContext()
    # ctxt.__enter__()
    ctxt.enter()
    jsstr = '''
    function add() {
        let a = 1;
        let b = 2;
        return a+b;
    }'''
    result = ctxt.eval(jsstr)
    print(result) 
复制代码

3、js2py 方法

1)、安装js2py

 

pip install js2py

2)、 js2py 示例

复制代码
    import js2py
    
    jsstr = '''
    function add() {
        let a = 1;
        let b = 2;
        return a+b;
    }'''
    content = js2py.EvalJs()  # 实例化解析js对象
    content.execute(jsstr)  # js转python代码
    result = content.add()
    print(result)    
复制代码

 

 

 

4、selenium 方法

1)、安装selenium

 

pip install selenium

2)、 selenium 示例

复制代码
    from selenium import webdriver
    
    jsstr = '''
    function add() {
        let a = 1;
        let b = 2;
        return a+b;
    }'''
    # 调用js
    driver = webdriver.chrome()
    # driver.execute_async_script(js)
    result = driver.execute_script(jsstr)
    print(result)    
复制代码

 

posted @   QYGQH  阅读(2589)  评论(1编辑  收藏  举报
相关博文:
阅读排行:
· 物流快递公司核心技术能力-地址解析分单基础技术分享
· .NET 10首个预览版发布:重大改进与新特性概览!
· AI与.NET技术实操系列(二):开始使用ML.NET
· 单线程的Redis速度为什么快?
· Pantheons:用 TypeScript 打造主流大模型对话的一站式集成库
点击右上角即可分享
微信分享提示