如何用pyinstaller打包pandas,并避开一些常见的错误

发布于 2022-09-06 22:44:07 字数 1781 浏览 39 评论 0

问题

小弟想用pandas生成一个DataFrame输入为.csv文件,然而打包的.exe文件,运行后无法实现。

1.环境

  • Win10
  • Python3.6.4(Anaconda最新版)
  • PyInstaller: 3.3.1

需要打包的代码(amyfile.py

import pandas as pd
import numpy as np
arr1 = np.arange(100).reshape(10,10)
data1 = pd.DataFrame(arr1)
data1.to_csv(r'D:\b.csv',index=False,header=False,decimal=',') 

第一个坑,报错如下

'utf-8' codec can't decode byte 0xce in position 122: invalid continuation....

解决方法:CMD中输入

CHCP 65001

2.尝试过的方法

(1)第一种方法

小弟之前已经百度多次,包括在amyfile.spec中加上

def get_pandas_path():
    import pandas
    pandas_path = pandas.__path__[0]
    return pandas_path
 

dict_tree = Tree(get_pandas_path(), prefix='pandas', excludes=["*.pyc"])
a.datas += dict_tree
a.binaries = filter(lambda x: 'pandas' not in x[0], a.binaries)

链接:【整理】PyInstaller针对包含Python3.4, PyQt, Pandas, Multiprocess的程序打包

另外

(2)第二种方法

需要去GitHub找一个host文件,小弟对host什么的一窍不通,作者给的地址不知道怎么下,下了不知道放哪?不知道是否真的有效?
PYINSTALLER打包PYTHON脚本的一些心得

3.打包的文件中恰恰缺失Pandas和Numpy库

仔细看了build文件中的warnamyfile.txt发现模块全都没用引进,在dist中生成的都是我不需要的库。

图片描述

图片描述

如果你对这篇内容有疑问,欢迎到本站社区发帖提问 参与讨论,获取更多帮助,或者扫码二维码加入 Web 技术交流群。

扫码二维码加入Web技术交流群

发布评论

需要 登录 才能够评论, 你可以免费 注册 一个本站的账号。
列表为空,暂无数据
我们使用 Cookies 和其他技术来定制您的体验包括您的登录状态等。通过阅读我们的 隐私政策 了解更多相关信息。 单击 接受 或继续使用网站,即表示您同意使用 Cookies 和您的相关数据。
原文