程序员最近都爱上了这个网站  程序员们快来瞅瞅吧!  it98k网:it98k.com

本站消息

站长简介/公众号

  出租广告位,需要合作请联系站长

+关注
已关注

分类  

暂无分类

标签  

暂无标签

日期归档  

2023-06(2)

python生成的exe程序不能正常运行,我来填几个坑

发布于2019-08-06 10:29     阅读(1155)     评论(0)     点赞(1)     收藏(2)


 

    下面描述几个我在使用pyinstaller工具,生成exe文件遇到的坑,及解决方案。

一、路径中存在中文。

    1、错误信息:

    2、原因:exe程序的路径中存在中文。如:

二、找不到模块(module)

    1、错误信息:

 2、原因分析:

    我的python程序是在pycharm中写的,在pycharm中,我创建的工程名称是PS_HY,python主程序是main.py,其他的py文件全部是各个网站的采集模块。

    在用pycharm写程序及调试时,模块的调用是通过这种方式:

from 工程名.模块文件名 import 模块类名

    注意这个时候,模块我是全放在跟main.py文件同一目录下的。但是以同样的目录结构,去生成exe文件时,就会出现no module的错误。

    解决办法是:在准备将py文件生成exe时,在main.py的目录中,创建一个与工程名同名的文件夹,将所引用的模块文件,全部放入此文件夹中,然后再生成exe程序。

    注意生成exe的命令格式,如:

pyinstaller -F main.py -p PS_HY\growatt.py -p PS_HY\kstar.py -p PS_HY\MGMTigen.py -p PS_HY\MGMTshine.py -p PS_HY\sanJing.py -p PS_HY\data\psData.py -p PS_HY\data\userData.py

三、生成的exe文件在自己电脑上运行正常,在别人电脑上不正常。

    1、错误信息:

(此项没有截图,好像错误信息种类挺多的,依照解决)

    2、原因分析:

    一般我们自己的电脑在写python程序之间,会配置各种各样的程序环境支持库,NET.、C++等等,而要使用我们发布的exe程序的用户,他们可能从未接触编程,可能只是普通办公电脑,从未添加这些库,而想要找到他们缺少的是哪个dll文件,更是麻烦,这个时候我们只需要一个软件搞定。点击下载,当安装时出现NET.Frame版本错误时,可安装第二个文件后再尝试,点击下载第二个软件

        暂时我就遇到了这三方面的问题,还有一个不单独分析了,是在使用验证码识别模块的时候,需要将【tessdata】文件夹复制到与main.exe同目录下,才能正常运行。

        大家还有其他方面的问题,欢迎一起讨论。



所属网站分类: 技术文章 > 博客

作者:我想打人

链接:https://www.pythonheidong.com/blog/article/7700/f9b34e38d1432027e64c/

来源:python黑洞网

任何形式的转载都请注明出处,如有侵权 一经发现 必将追究其法律责任

1 0
收藏该文
已收藏

评论内容:(最多支持255个字符)