Python 在用 Pyinstaller封装exe-TypeError: expected str, bytes or os.PathLike object, not NoneType 解决方法!

一、环境:

系统:win7

版本:Python 3.7.2  (32位)

二、问题:

利用Pyinstaller封装exe 时, 报错:TypeError: expected str, bytes or os.PathLike object, not NoneType

如下图:

三、解决方法:

1.这个问题,在GitHub上已提及 https://github.com/pyinstaller/pyinstaller/issues/3942 ; 被标记为 #3942 Error

2【真正解决方法:】 更新一下,我们电脑上Pyinstaller包 下的 bindepend.py 文件。 Pyinstaller 的工程师应该修复了这个bug,只要更新一个文件就行。

更新方法

A. 先官方 GitHub 下载Pyinstaller 包,地址: Pyinstaller GitHub

B. 下载后,我们打开进入 路径: pyinstaller/PyInstaller/depend/bindepend.py     找到 bindepend.py 文件

C.下面是换更新,我们电脑上的  bindepend.py  这里我们用一个搜所工具 Everything!【自己百度下载】

用Everything 搜索出所有的  bindepend.py  [可以先把旧的 bindepend.py 改名 bindepend_old.py, 再把新的复制进入] 如下图 :

如图上,搜索出4个bindepend.py 替换成下载好的!!

四 、 完成

又可以愉快的,生成 exe了!!!

原文地址:https://www.cnblogs.com/Ultramantoo/p/11123684.html

时间: 2024-11-12 09:55:55

Python 在用 Pyinstaller封装exe-TypeError: expected str, bytes or os.PathLike object, not NoneType 解决方法!的相关文章

Python包的相对导入时出现“ ‘Parent module ' not loaded, cannot perform relative import”的解决方法

在练习Python中package的相对导入时,即 from . import XXX 或者 from .. import XXX 时会遇到这样两个错误: SystemError: Parent module '' not loaded, cannot perform relative import 和 ValueError: attempted relative import beyond top-level package 其实这两个错误的原因归根结底是一样的:在涉及到相对导入时,packa

关于Python json解析过程遇到的TypeError: expected string or buffer

关于Python json解析过程遇到的问题:(爬取天气json数据所遇到的问题http://tianqi.2345.com/) part.1 url--http://tianqi.2345.com/t/wea_history/js/201708/60061_201708.js 返回的数据如下: 这就尴尬了,直接json.loads是返回错误的. 对比了其他网页返回的--http://www.toutiao.com/search_content/?offset=0&format=json&

node-webkit(Windows系统) 打包成exe文件后,被360杀毒软件误报木马的解决方法

最近项目需要用到node-webkit.处理古老级用户的兼容以及他们心里的‘数据安全’问题. 1.下载完node-webkit 2.制作appName.nw文件 3.copy /b nw.exe+appName.nw  TestAppName.exe 到目前为止,目录下生成了TestAppName.exe文件 ,双击运行很完美. 但,直接将TestAppName.exe换个目录,却打不开. google+百度的解决方案:使用Enigma Virtual Box工具,打包成exe文件.(Enigm

Python报错UnicodeDecodeError: ascii codec can t decode byte 0xe0 ...解决方法

用命令(python setup.py install)安装webpy时候总是报错 在网上搜索到的解决方法如下: 1. 这是Python 2 mimetypes的bug 2. 需要将Python2.7/lib/mimetypes.py文件中如下片段注释或删除: try:    ctype = ctype.encode(default_encoding) # omit in 3.x!except UnicodeEncodeError:    pass 补充其它解决办法 解决办法: 在报错的页面添加

Python 3.6 使用 pyinstaller 打包exe文件遇到的问题

自己做了一个加密解密的小软件,想打包成exe文件.在网上搜发现pyinstaller使用起来简单点. 在这里记录自己遇到问题 使用的是Python 3.6版本,直接使用pip安装 pip install pyinstaller 安装过程很顺利,安装的是3.2.1版本 使用看起来也很简单,pyinstaller -F example.py  生成单一的exe文件,具体其他命令暂时不细说了,网上有很多大神的总结 但执行过程中报错: IndexError: tuple index out of ran

使用py2exe 将python文件转成exe文件(以及 error: [Errno 2] No such file or directory: 'MSVCP90.dll'解决方法)

用python写程序真的很简单,当我们开发出功能后,特别是带窗体的python程序,需要将python程序转成双击运行的exe程序.我们需要一个第三方模块 py2exe,就是将py转成exe的模块.只需py2exe怎么安装,我这里就不详细说明了,直接到官网上下载对应python的py2exe版本,然后是傻瓜式安装,并且安装好后py2exe模块会自动添加到python的路径中. 然后就简单了,我们在要被转换成exe的py文件目录下新建一个 setup.py 文件,将代码贴进去: #coding=u

python 报错TypeError: 'range' object does not support item assignment,解决方法

贴问题 nums = range(5)#range is a built-in function that creates a list of integers print(nums)#prints "[0,1,2,3,4]" print(nums[2:4])#Get a slice from index 2 to 4 (exclusive); prints '[2,3]" print(nums[2:])#Get a slice from index 2 to the end

执行python manage.py makemigrations时报错TypeError: __init__() missing 1 required positional argument: 'on_delete'

在执行python manage.py makemigrations时报错: TypeError: __init__() missing 1 required positional argument: 'on_delete' 解决方法: 在连接外键时加上: on_delete=models.CASCADE 执行python manage.py makemigrations时报错TypeError: __init__() missing 1 required positional argument

python3.6.2利用pyinstaller发布EXE

我的环境是Ubuntu 16.04,系统自带Python2和Python3 安装 pip3 install pyinstaller 发布exe pyinstaller -F helloworld.py 其中,-F 表示打包成单独的 .exe 文件,这时生成的 .exe 文件会比较大,而且运行速度回较慢.仅仅一个 helloworld 程序,生成的文件就 5MB 大. 另外,使用 -i 还可以指定可执行文件的图标: -w 表示去掉控制台窗口,这在 GUI 界面时非常有用.不过如果是命令行程序的话那