尧图网站建设 尧图网络
  • 首页
  • 关于我们
  • 服务项目
  • 案例展示
  • 建站流程
  • 资讯中心
  • 联系我们
首页/资讯中心/详情

python:python执行js

python:python执行js
📅 发布时间:2026/6/20 12:04:37

一,安装node

安装Node.js(推荐)

    • 下载地址:https://nodejs.org
    • 验证安装:node -v
$ node -v
v22.20.0

二,安装python库

$ pip install PyExecJS
Collecting PyExecJSDownloading PyExecJS-1.5.1.tar.gz (13 kB)Installing build dependencies ... doneGetting requirements to build wheel ... donePreparing metadata (pyproject.toml) ... done
Collecting six>=1.10.0 (from PyExecJS)Downloading six-1.17.0-py2.py3-none-any.whl.metadata (1.7 kB)
Downloading six-1.17.0-py2.py3-none-any.whl (11 kB)
Building wheels for collected packages: PyExecJSBuilding wheel for PyExecJS (pyproject.toml) ... doneCreated wheel for PyExecJS: filename=pyexecjs-1.5.1-py3-none-any.whl size=14649 sha256=19677164f4303803756805f1a29a6bcd66ff7fa5f4d21b66ea740d25a1d836fbStored in directory: /home/liuhongdi/.cache/pip/wheels/95/1c/16/774a935204aacf741cea3deae76c535050d19727c72613d80f
Successfully built PyExecJS
Installing collected packages: six, PyExecJS
Successfully installed PyExecJS-1.5.1 six-1.17.0

三,执行js代码

代码:

import execjs# 直接执行
print(execjs.eval('"abc aaa bbb".split(" ")'))# 编译后调用
js_code = """
var t1="aaaa"
function add1(x, y) {return x + y;
}
"""
ctx = execjs.compile(js_code)
print(ctx.call("add1", 1, 2))  # 输出: 3
print(ctx.eval('t1'))

执行

['abc', 'aaa', 'bbb']
3
aaaa

四,执行文件中的js代码:

text.js

var t=666
function add(a, b) {return a+b
}

 python

import execjs# 读取js文件
def read_js_file(file_path):with open(file_path, 'r', encoding='utf-8') as f:return f.read()js_code2 = read_js_file('text.js')  # 假设norm.js中定义了add函数
print(js_code2)    # 查看js代码
ctx = execjs.compile(js_code2)
print(ctx.call("add", 2, 3))  # 输出: 5
print(ctx.eval('t'))    # 输出: 666

运行:

var t=666
function add(a, b) {return a+b
}5
666

 

相关新闻

  • flask:模板用extends扩充页面内容
  • flask: 用模板渲染html页面
  • flask: 处理路由错误

最新新闻

  • Kali Linux安装配置Burp Suite专业版完整指南
  • 2026年6月最新江诗丹顿中国官方售后服务电话地址热线及客服网点 - 江诗丹顿服务中心
  • 2026 年 6 月最新腕表干货!万国全大陆官方正规维修门店地址完整公示,全国统一售后热线同步全新上线 - 万国中国服务中心
  • 天津名包回收机构实地测评:5家店报价服务全方位对比,看完再卖! - 讯息早知道
  • 2026年6月最新劳力士中国官方售后热线服务电话客户地址网点 - 劳力士服务中心
  • 2026年大平层装修深度测评:如何为你的改善型住宅匹配最佳方案? - 速递信息

日新闻

  • 信任的进化:技术实现详解——如何用JavaScript构建博弈论模拟器
  • Terrakube自定义工作流:如何集成OPA、Infracost等工具扩展IaC能力
  • grunt-concurrent快速入门:5分钟学会并行运行Grunt任务

周新闻

  • 3步解锁iOS设备:applera1n激活锁绕过完全指南
  • 39 2026 人工智能证书终极盘点,普通人选 AI 证书可以从这些方向入手
  • Redis 暴露公网有多危险?从端口检查到补救步骤

月新闻

  • 【总结】入门篇:50句话让你记住架构核心概念
  • WeChatMsg技术方案解析:实现Mac微信数据自主管理的完整解决方案
  • WeChatMsg:革新性微信数据备份方案,打造你的专属数字记忆库

关于尧图

  • 公司简介
  • 团队介绍
  • 企业文化
  • 荣誉资质

服务项目

  • 定制开发
  • 电商建站
  • UI 设计
  • 运维服务

快速链接

  • 案例展示
  • 建站流程
  • 常见问题
  • 资讯中心

联系方式

  • 📍北京市朝阳区互联网产业园 A 座 10 层
  • 📞400-888-8888
  • ✉️contact@rkmt.cn
  • 🕐周一至周日 9:00-21:00

© 2024 北京尧图网络科技有限公司 版权所有 | 京 ICP 备 XXXXXXXX 号