pywebview构建桌面应用新选择
声明:该文章来自(字节航海家)版权由原作者所有,K2OS渲染引擎提供网页加速服务。
pywebview 是一个轻量级的 Python 库,它允许开发者在桌面应用中使用原生的 Web 视图组件来展示 HTML、CSS 和 JavaScript 构建的 Web 页面。如果你有现成的前后端分离项目要打包为桌面应用,这个是最方便的。
一、安装 pywebview
pip install pywebview
import webviewdef load_html(): # 这里可以返回一个 HTML 字符串或者加载本地 HTML 文件的路径 html = """ <html> <body> <h1>欢迎使用 pywebview 示例应用</h1> <p>这是一个在桌面应用中嵌入 Web 内容的简单演示。</p> </body> </html> """ return htmlif __name__ == '__main__': # 创建一个窗口,并指定窗口标题和加载的 HTML 内容 window = webview.create_window('pywebview 演示', html=load_html()) webview.start()
import webviewdef python_function(): print("这是从 JavaScript 调用的 Python 函数")def load_html(): html = """ <html> <body> <h1>pywebview 交互示例</h1> <button onclick="callPythonFunction()">调用 Python 函数</button> <script> function callPythonFunction() { // 使用 pywebview 的 JavaScript API 调用 Python 函数 pywebview.api.python_function(); } </script> </body> </html> """ return htmlif __name__ == '__main__': api = { 'python_function': python_function } window = webview.create_window('pywebview 交互演示', html=load_html(), js_api=api) webview.start()
mounted() { window.external = { vueMethod: (data) => { console.log('Received data from Python:', data); // 在这里可以进行相应的处理,如更新 Vue 组件的状态 } };}
import webviewdef load_vue_app(): # 这里指定 Vue3 应用构建后 index.html 的路径 return 'path/to/my-vue-app/dist/index.html'def call_vue_method(): window.evaluate_js('window.external.vueMethod("Hello from Python")')if __name__ == '__main__': window = webview.create_window('My Vue3 Desktop App', html=load_vue_app()) webview.start(call_vue_method)
[超站]友情链接:
四季很好,只要有你,文娱排行榜:https://www.yaopaiming.com/
关注数据与安全,洞悉企业级服务市场:https://www.ijiandao.com/
- 1 奋楫扬帆 行稳致远 7939487
- 2 25年老员工被开除 法院判赔98万 7924544
- 3 80后爸爸辅导作业气到心肌梗死 7810139
- 4 解读2025年中国经济政策关键词 7761541
- 5 张庭恢复直播 不卖面膜卖锅碗瓢盆 7650541
- 6 ChatGPT崩了 7592776
- 7 尹锡悦:无论弹劾还是调查奉陪到底 7471540
- 8 何炅玩自己的赞美食物梗 7325378
- 9 公安部公布打击网络水军犯罪案例 7243173
- 10 尹锡悦发表对国民谈话 7119651