execjs的使用

我们execjs除了nodejs我们还需要浏览器环境,我们浏览器上还需要document以及window对象所有呢我们要安装环境

1.本地安装Node.JS

2.Node中安装jsdom模块 npm install jsdom 

3.JS文件开头添上下述固定代码

//解决TextEncoder is not defined
const textencoding = require(‘text-encoding‘);
TextEncoder = textencoding.TextEncoder;
TextDecoder = textencoding.TextDecoder;

//解决浏览器环境问题
const jsdom = require("jsdom");
const {JSDOM} = jsdom;
const dom = new JSDOM(‘<!DOCTYPE html><p>Hello world</p>‘);
window = dom.window;
document = window.document;
XMLHttpRequest = window.XMLHttpRequest;

4、python脚本中execjs的使用

import execjs #导入

node = execjs.get() #安装nodejs后,会得到运行环境名为:Node.js (V8)

with open(js_code.js,encoding=utf-8) as f:
    js_code = f.read()
ctx = execjs.compile(js_code, cwd=rE:\Nodejs\node_modules\npm\node_modules) #compile方法去加载js代码,参数cwd指定本地安装模块所在目录
data = ctx.eval(getData(xxx))  #eval方法去执行js中的函数或方法

 

execjs的使用

上一篇:django makemigrations 错误:TypeError: 'module' object is not iterable


下一篇:vue中关于v-model和:model的理解