python 调用js

2021-09-10  本文已影响0人  王国的荣耀

使用js2py时发现python调用js方法之后计算的结果与直接调用的js结果不一样。
排除所有的问题之后,切换对应的pyhon与js交互库:由原来的js2py修改为execjs,问题解决。

import js2py
with open("test_demo.js", 'r', encoding='utf8') as f:
                test_demo = f.read()

 js = js2py.EvalJs()
 js.execute(test_demo)
 sign = js.call_demo(data)

修改为execjs

   import execjs
   def get_web_result(self, data):
        try:
            with open("web_result.js", 'r', encoding='utf8') as f:
                web_result = f.read()

            exec_js = execjs.compile(web_result)
            result = exec_js.call('call_demo', data)
            print('result: {}'.format(result))
            return result
        except Exception as reason:
            print(reason)
            return None
上一篇下一篇

猜你喜欢

热点阅读