python eel打包问题解决

最起初遇到的问题,由于我在pycharm下virtualenv做的


No module named 'gevent.__hub_local'

本机环境打包的问题

显示找不到

C:XXXX/temp/xxxx/eel/eel.js

于是打开了python下的eel包
1473748-20190424094003413-241078262.png
将文件下的

__init__.py 第17行
#_eel_js_file = pkg.resource_filename('eel', 'eel.js')
#_eel_js = open(_eel_js_file, encoding='utf-8').read()
注释掉
新添加
eel_js=eelJS.eelJS
在上面导入eelJS模块
自己在eel模块中新建一个python文件,名字为eelJS,文件内容是eel.js文件中的内容

1473748-20190424094321087-1775208156.png

后来想把编译好的软件去掉控制台,看到网上都是用 python -m eel py脚本文件 web静态文件目录 --onefile来打包的,并不知道其中打包的原理,后来打开eel模块下的

__main__.py文件
from __future__ import print_function
import sys
import pkg_resources as pkg
import PyInstaller.__main__ as pyi
import os

args = sys.argv[1:]
main_script = args.pop(0)
web_folder = args.pop(0)

print("Building executable with main script '%s' and web folder '%s'...\n" %
      (main_script, web_folder))

eel_js_file = pkg.resource_filename('eel', 'eel.js')
js_file_arg = '%s%seel' % (eel_js_file, os.pathsep)
web_folder_arg = '%s%s%s' % (web_folder, os.pathsep, web_folder)

needed_args = ['--hidden-import', 'bottle_websocket',
               '--add-data', js_file_arg, '--add-data', web_folder_arg]
full_args = [main_script] + needed_args + args

print('Running:\npyinstaller', ' '.join(full_args), '\n')

pyi.run(full_args)

1473748-20190424094656028-1984417429.png

底层调用的也是pyinstaller,所以有了下面的命令,直接将需要的命令写在后面

我需要打包的pyton文件是 document.py  额外需要加入打包的目录是web
python -m eel   document.py web -Fw -i web/images/ico.ico

转载于:https://www.cnblogs.com/ssjt/articles/10760639.html

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值