pyv8的使用

参数传递:js->python

import PyV8
with PyV8.JSContext() as ctxt:
    ctxt.eval("""
                var_ex1 = 1;
                var_ex2 = 1.0;
                var_ex3 = "test";
                var_ex4 = true;
            """)
    vars = ctxt.locals
    var_ex1 = vars.var_ex1
    print var_ex1

参数传递:Python->js

    
import PyV8
with PyV8.JSContext() as ctxt:
    ctxt.locals.test = 12
    print int(ctxt.eval("test"))

函数传递:Python->js

#把Enc绑定到js中的Enc方法
Enc = ctxt.locals.Enc
#执行Enc方法,传入python的参数:params,_deskey,用python接受返回值
str = Enc(params, _deskey, '', '')
# 第二种
 with PyV8.JSContext() as ctxt:
        with open('./docid.js','r')as f:
            js=f.read()
        ctxt.eval(js)
        runEval=ctxt.locals.runEval
        Navi=ctxt.locals.Navi
        runEval(RunEval)
        with open('cpwsw.txt','a')as f:
            for i in id_list:
                url=Navi(i,'')
            #         print url
                f.write(url)
                f.write('\n')



猜你喜欢

转载自blog.csdn.net/wu0che28/article/details/82856646