Python - 执行js脚本
Max.Bai
2019-08
0x00: 背景
需要用python执行mockjs 来生产模拟数据。
当然有其他办法,这个确实比较绕,暂且不讨论,主要关注python执行js。
0x01:工具
execjs 或者PyV8 pyton调用js的库,execjs稳定点,PyV8经常报错,但性能好点(或许是我姿势不对)
nodejs 用来执行js的引擎
mockjs js库
0x02: 直接上代码
代码确实太少了,就直接上了,注释部分为pyv8用法
# ! python3
# -*- coding:utf-8 -*-
import os
import execjs
# import PyV8
if os.name == 'nt':
os.environ["NODE_PATH"] = "C:/Users/max.bai/AppData/Roaming/npm/node_modules" #for windows
mockjs_path = 'C:/Users/max.bai/AppData/Roaming/npm/node_modules/mockjs/dist/mock.js'
else:
os.environ["NODE_PATH"] = "/usr/local/nodejs/lib/node_modules" #for centos
mockjs_path = '/usr/local/nodejs/lib/node_modules/mockjs/dist/mock.js'
# os.environ["EXECJS_RUNTIME"] = "JScript"
os.environ["EXECJS_RUNTIME"] = "Node"
print(execjs.get().nam

本文介绍了如何在Python中执行JS脚本,特别是在生成模拟数据的场景下。使用了execjs库来稳定地调用JS,并提及PyV8作为替代方案,虽然性能可能更好但可能会遇到错误。此外,还提到了Node.js作为JS执行引擎以及Mockjs库的作用。文章通过简单的代码示例展示了执行过程。
最低0.47元/天 解锁文章
556

被折叠的 条评论
为什么被折叠?



