需求:帮别人做一个统计 pdf 文档内词频的功能
环境:python3.6
>Package Version
-------------- ---------
altgraph==0.16.1
atomicwrites==1.1.5
attrs==18.1.0
future==0.16.0
jieba==0.39
macholib==1.10
more-itertools==4.2.0
pdfminer3k==1.3.1
pefile==2017.11.5
pip==18.0
pluggy==0.7.1
ply==3.11
py==1.5.4
PyInstaller==3.3.1
pytest==3.7.0
setuptools==39.1.0
six==1.11.0
参考文档:
https://www.jianshu.com/p/5a59b6985346https://www.crifan.com/use_pyinstaller_to_package_python_to_single_executable_exe坑:
上述链接文档里,都是把环境和脚本打包成了一个 exe 文档
在脚本目录用命令 pyinstaller -F -p venv_path (中间一定要有空格)
you.py 打包成一个文档后,报错在系统目录找不到 jieba 的 dict.txt
因为 jieba 会去找它自带的 dict.txt 文档
当你打包成一个文档的时候,貌似 pyinstaller 不会把你的 txt 文档打包进来,所以 jieba 回去系统目录去找,就会找不到,然后报错
想到的第一个解决办法是改搜索路径,嫌麻烦,不改...
第二个办法,既然不会打包 txt 文档,那我干脆不打包依赖库,只打包脚本,让它自己去搜索依赖
pyinstaller -p venv_path (中间一定要有空格)
you.py因为我需要黑终端输入路径,所以没有用 -w 参数
在 dist 文件夹生成了一个以脚本名命名的文件夹,包含一堆配置文档和一个 脚本名.exe
运行报错找不到当前目录下的 jieba
遂把 venv/lib/python3.6/site-packages/ 下的所有文件拷过来
双击成功 666
这是一个专为移动设备优化的页面(即为了让你能够在 Google 搜索结果里秒开这个页面),如果你希望参与 V2EX 社区的讨论,你可以继续到 V2EX 上打开本讨论主题的完整版本。
https://www.v2ex.com/t/476247
V2EX 是创意工作者们的社区,是一个分享自己正在做的有趣事物、交流想法,可以遇见新朋友甚至新机会的地方。
V2EX is a community of developers, designers and creative people.