首页
学习
活动
专区
工具
TVP
发布
精选内容/技术社群/优惠产品,尽在小程序
立即前往

pyinstaller打包python项目

一、引言在日常工作中,基本都是直接执行python脚本,但最近有个项目,需要提供给外部使用,而使用者又完全没有编程基础,不太可能自己安装python,安装各种依赖,所以将python项目打包为exe程序就显得尤为必要...手动添加隐藏导入模块--hidden-import module_name:手动添加一个隐藏导入模块,以防PyInstaller在分析过程中遗漏。5....运行时挂钩--runtime-hook RUNTIME_HOOKS:指定运行时挂钩脚本,在主程序运行前被调用。请根据实际需求组合这些参数。...打包后运行程序报错找不到资源文件解决措施: 代码中资源文件路径尽量使用相对路径4.打包后执行exe报错Error loading Python DLLError loading Python DLL...LoadLibrary: 找不到指定模块。这个错误提示表明在运行使用PyInstaller打包后exe文件,系统未能找到Python动态链接库(DLL)文件——python311.dll

29810

关于python安装lxml插件问题

文章只是介绍自己安装安装不上到安装后报错,再到安装成功心路历程,并不代表广大欧皇也会会出现同类型问题,也不是总结和汇总各种出问题原因....lxml   弹出错误 Building wheels for collected packages: lxml Building wheel for lxml (setup.py) ... error...我因该是要安装红框里这个,但是还是安装失败了 后续又在网上查了一些,大概意思都差不多,但是有一篇文章提及到python官网下载lxml安装文件 附上链接地址 https://pypi.org/project...lxml import etree ImportError: DLL load failed: 找不到指定模块。...找不到etree这个东东,这又是为啥呀,又是一顿查,最后还是锁定了是anaconda这个玩意给我装不完整,有的包有有的没有,只能卸载重装,重装以后终于编译成功了 简单总结一下, 首先安装失败先看看自己

2.6K20
您找到你想要的搜索结果了吗?
是的
没有找到

ImportError: DLL load failed … 找不到指定模块 此类问题解决方法

可能存在些许不兼容问题,环境配置完成后,出现一连串 ImportError: DLL load failed 找不到指定模块 对于很多 Python 开发者来说,这类问题最为头疼,不知道如何下手解决...failed while importing shiboken2: 找不到指定模块 定位 提示上看,是加载 DLL 失败,是关于 shiboken2 模块。....dll 依赖: 原来,在创建 Python3.8.3 虚拟环境,只自动复制了 python38.dll 到 Scripts 目录,没有 python3.dll,于是手动复制 python3...再次运行项目,果然上面错误没有了。...QtCore: 找不到指定模块 继续使用 Dependency Walker,打开 PySide2 包目录下 QtCore.pyd,发现缺少几个 DLL 文件: 网上搜索并下载缺失 DLL

8.5K20

PythonPython编译成计算机可执行文件(Windows计算机可执行文件exe,Linux 计算机可执行文件elf,Mac计算机可执行文件mach-O)

生成不自定义图标的exe文件 4.生成带自定义图标的exe文件 PyInstaller 会对脚本进行解析,并做出如下动作: 内部流程 背景: Python 程序都是脚本方式,一般是在解析器里运行,如果要想要给别的计算机使用...与类似工具相比,PyInstaller主要优势在于PyInstaller可与Python 2.7和3.5-3.7一起使用;由于透明压缩,它可生成较小可执行文件;它是完全多平台;并且使用OS支持来加载动态库...您将不需要在Wiki中寻找技巧,也可以对文件或设置脚本进行自定义修改。例如,完全支持PyQt,Django或matplotlib之类库,而无需手动处理插件或外部数据文件。...-w,--windowed,--noconsolc 指定程序运行时不显示命令行窗口(仅对 Windows 有效) -c,--nowindowed,--console 指定使用命令行窗口运行程序(仅对...如果没有指定,则默认使用当前目录来生成 spec 文件 -p DIR,--path=DIR 设置 Python 导入模块路径(和设置 PYTHONPATH 环境变量作用相似)。

3.4K10

Python3快速入门(十八)——PyI

单目录模式打包生成目录除可执行文件外,还包括 Python 解释器(PythonXX.dll)、系统运行库(ucrtbase.dll 以及其它 apixx.dll),以及一些编译后 Python 模块...Analysis用于分析脚本引用关系,并将所有查找到相关内容记录在内部结构中,供后续步骤使用; PYZ将所有 Python 脚本模块编译为对应 .pyd 并打包; EXE:将打包后 Python...四、PyInstaller Hook机制 1、PyInstaller Hook简介 PyInstaller 使用递归方法,入口脚本文件逐个分析,获取依赖模块。...两种 Hook 主要是按照加载时间区分,第一种Hook在 PyInstaller 文档中没有明确命名,是在生成过程中,导入特定模块时调用,称为 Import Hook;第二种是Runtime Hook...PyInstaller 修改了模块加载机制,当运行期间加载任何模块,PyInstaller 会检查是否有对应 Runtime Hook,如果有,则运行相应Hook。

3.6K10

为什么pycharm下载不了第三方库_pycharm详细使用教程

1、安装目标库 1、首先,选择你要导入库文件,如seaborn库 下载网站: https://pypi.org/ 或https://www.lfd.uci.edu/~gohlke/pythonlibs...\Lib\site-packages下,有安装后第三方库文件 4、第三步完成后,后续再有新第三方库安装完成后,会自行加载 2、注意pip安装,有时候会报错,库所需要依赖包如何查看...例如在安装scikit_learn库模块对应sklearn),注意观察下图提示消息: 其中joblib、scipy、numpy状态是requirement already,说明这三个我已经安装...而threadpoolctl状态是Collecting,说明它找不到这个依赖包,导致scikit_learn库安装失败 解决办法:按照上节方法,安装一下threadpoolctl,然后再重新安装scikit_learn...就ok啦 3、Python报错:ImportError: DLL load failed: 找不到指定模块 执行命令导入模块,报 DLL load failed: 找不到指定模块

2.2K30

深入解读Python解析XML几种方式

虽然与SAX一样采用事件驱动模型(event-driven processing model),但是不同是,使用pull解析器,使用者需要明确地XML流中pull事件,并对这些事件遍历处理,直到处理完成或者出现错误...如果你所使用Python版本中没有cElementTree所需加速模块,你可以这样导入模块: 如果某个API存在不同实现,上面是常见导入方式。...当然,很可能你直接导入第一个模块,并不会出现问题。...当解析一个约100MBXML文档运行上面脚本Python进程内存使用峰值为约560MB,总运行时间问2.9秒。 请注意,我们其实不需要讲整个树加载到内存里。...当利用上面这个脚本解析同一个文件,内存使用峰值只有7MB,运行时间为2.5秒。速度提升原因,是我们这里只在树被构建,遍历一次。

2.6K70

python py2exe_编写简单网页

本文译自Py2exe官网 http://www.py2exe.org/ 简介 py2exe 是 Python Distutils 一个外部扩展,它可以把Python脚本转为可执行Windows程序...为了更好完成本教程,你需要了解一些Python 基本知识(你可以 python.org’s getting started 页面开始)。...Distutils 需要做细节就包含在 setup.py 文件设置中(有时候还有一些关联文件)。 “py2exe” 是一个新 Distutils 命令, 当你导入 py2exe就会加载进来。...让我们一行一行解读… 在py2exe 下工作,我们通常需要 Distutils 唯一部分就是 setup 函数,所以我们导入它。...目录 build 被用做应用程序被打包工作空间,当setup 脚本运行完成后可以放心删除。目录 dist 下都是运行应用程序是必需文件。 4.

49710

千锋扣丁学堂Python培训之十个安全

这些攻击很常见,特别是在解析外部(即不可信任)XML文件。 其中一种攻击为“billionlaughs”,因为加载文件包含了很多个(数十亿)“lols”。...你可以加载XML实体文件,当XML解析器试图将这个XML文件加载到内存中,会消耗很多个G内存。 另一种攻击使用外部实体扩展。XML支持外部URL引用实体,XML解析器通常会直接获取并加载该资源。...您甚至不知道您某个依赖包已经暴露在攻击之下。 那么在Python中会发生什么?标准库模块etree,DOM,xmlrpc都容易遭受这些类型攻击。...例如: 默认情况下,Python以debug为true来执行脚本,但在真实环境中,通常使用优化运行,这将会跳过assert语句并直接转到安全代码,而不管用户是否是is_admin。...在pickle对象Python类可以声明一个名为reduce魔术方法,该方法返回一个字符串、或一个元组。攻击者可以使用它来引用其中一个子进程模块,在主机上运行任意命令。

88410

Python10个常见安全漏洞及修复方法

你可以加载XML实体文件,当XML解析器试图将这个XML文件加载到内存中,会消耗很多个G内存。不信就试试看:-) ? 另一种攻击使用外部实体扩展。...XML支持外部URL引用实体,XML解析器通常会直接获取并加载该资源。“攻击者可以绕开防火墙访问保密资源,因为所有请求都是由内部可信IP地址创建,请求不是来自于外部。”...标准库模块etree,DOM,xmlrpc都容易遭受这些类型攻击。...5、感染site-packages 或导入路径 Python导入系统非常灵活。当你为测试程序编写猴子补丁,或者重载核心函数,你会感觉非常方便。 但这也是Python最大安全漏洞之一。...在pickle对象Python类可以声明一个名为__reduce__魔术方法,该方法返回一个字符串、或一个元组。攻击者可以使用它来引用其中一个子进程模块,在主机上运行任意命令。

1.5K00

Python10个常见安全漏洞及修复方法

你可以加载XML实体文件,当XML解析器试图将这个XML文件加载到内存中,会消耗很多个G内存。不信就试试看:-) 另一种攻击使用外部实体扩展。...XML支持外部URL引用实体,XML解析器通常会直接获取并加载该资源。“攻击者可以绕开防火墙访问保密资源,因为所有请求都是由内部可信IP地址创建,请求不是来自于外部。”...标准库模块etree,DOM,xmlrpc都容易遭受这些类型攻击。...5、感染site-packages 或导入路径 Python导入系统非常灵活。当你为测试程序编写猴子补丁,或者重载核心函数,你会感觉非常方便。 但这也是Python最大安全漏洞之一。...在pickle对象Python类可以声明一个名为__reduce__魔术方法,该方法返回一个字符串、或一个元组。攻击者可以使用它来引用其中一个子进程模块,在主机上运行任意命令。

1.5K40

OSError: 找不到指定模块Could not find cudart64_90.dll.

OSError: [WinError 126] 找不到指定模块/Could not find 'cudart64_90.dll'.如果你在使用Python开发遇到了类似的错误消息,例如OSError...: [WinError 126] 找不到指定模块/Could not find 'cudart64_90.dll',那么你可能是在尝试使用CUDA相关功能,但缺少了相应CUDA运行时库文件。...结论OSError: [WinError 126] 找不到指定模块/Could not find 'cudart64_90.dll'错误通常表示缺少CUDA运行时库文件,这是使用GPU进行加速机器学习库所需...当我们在使用深度学习框架如TensorFlow,通常会使用CUDA来加速计算。当我们在Windows系统上进行GPU加速,可能会遇到找不到cudart64_90.dll错误。...通过执行这段代码,我们可以将缺失DLL文件复制到系统路径中,从而解决OSError: [WinError 126] 找不到指定模块/Could not find 'cudart64_90.dll'错误

46710

PyInstaller打包python程序为exe可执行文件

例如使用opencv时候存在找不到视频编解码器情况(Pyinstaller详细教程) 即找不到opencv_ffmpeg341_64.dll 这时候需要我们手动设置资源路径, 可以通过–add-binary...5.2 exe文件要从dist文件拿出来 被调用脚本需要拷贝到dist中打包好文件夹中,否则可能导致调用失败 project |---- test.py |---- func1.py |---- func2...笔者做了测试,使用你本来虚拟环境会把原来包都打在一块,有300M左右,而新建envs打包只有50M;Linux系统可以随意安装python库,封装时候会按照python导入包去封装,不会将环境内所有...-D *.spec 5.6 模块找不到问题解决办法 参考:使用pyinstaller将python程序打包成exe执行文件遇到模块找不到问题 解决办法是:打包加入你自编模块(或第三方模块所在文件夹路径...因此打包需要添加路径进行打包。 使用pyinstaller ***.py -F -p D:\Pycharm\Program 命令在主程序所在文件目录下进行打包,即可解决模块找不到问题。

83120

Windows黑客编程技术详解 --第四章 木马启动技术(内含赠书福利)

返回值 如果函数成功,则返回大于32值。如果该函数失败,则它将返回一个错误值,指示失败原因。 3.CreateProcess函数 创建一个新进程及主线程。新进程在调用进程安全上下文中运行。...4.3 内存直接加载运行 有很多病毒木马都具有模拟PE加载功能,它们把DLL或者exe等PE文件内存中直接加载到病毒木马内存中去执行,不需要通过LoadLibrary等现成API函数去操作...因为内存直接加载运行技术核心就是模拟PE加载加载PE文件过程,也就是对导入表、导出表以及重定位表操作过程。 那么程序需要进行哪些操作便可以直接内存中加载运行DLL或是exe文件呢?...PE结构使用导入表来记录PE程序中所有引用函数及其函数地址。在DLL映射到内存之后,需要根据导入表中导入模块和函数名称来获取调用函数地址。...接下来,根据PE结构重定位表,重新对重定位表进行修正。 然后,根据PE结构导入表,加载所需DLL,并获取导入函数地址并写入导入表中。 接着,修改DLL加载基址ImageBase。

3.6K50

Python打包exe文件方法汇总【4种】

py2exe 介绍 py2exe是一个将python脚本转换成windows上可独立执行可执行程序(*.exe)工具,这样,你就可以不用装python而在windows系统上运行这个可执行程序。...PyInstaller本身并不是Python模块,所以安装随便放在哪儿都行。 优点: 可将python文件转成可执行文件 跨平台 输出可以是单一目录,也可以是一个单独打好包可执行文件。...智能支持python第三方模块如PyQt,外部数据文件等 支持EGG格式文件 可执行文件可以用UPX压缩,二进制压缩方式 支持控制台和视窗两种方式。...提示:直接通过 pip install cx-freeze 安装,仍然出现错误时(找不到文件),最好去官网:网址手动下载相应版本cx-freeze文件,放在Scripts文件夹下,手动双击安装,然后再运行...但是你将打包后文件发给另一台机器,运行.exe程序会报错,大概意思是“根据你写绝对路径找不到图片等素材”,即使你在文件夹下拷贝了素材,但是绝对路径也是错误,所以,最好使用上一种方法。

2.6K10

解决python3中关于import疑难杂症

python中import与包管理 概念:模块与包 模块module:一般是以.py为后缀文件,也包括.pyo、.pyc、.pyd、.so和.dll后缀文件,模块内定义了函数、类以及变量 包package...,对用户隐藏各个子模块实现细节 当我们import一个包,会自动加载该包对应__init__.py,因此如果在其中做太复杂运算会造成不必要开销 sys.modules sys.modules维护了一个已加载...module字典,第二次加载该module可以直接字典中查找,加快执行速度。...方法一:通过模块运行方式解决(推荐) 本质上我们是希望将module_3.py这个模块作为脚本运行,所以我们可以带上-m参数: $ cd src # 代码中是以src为根目录, 所以需要进入到src...方法二:在sys.path中添加查找路径 前面的报错是找不到bar_package模块名,因为直接运行的话sys.path第一个路径就是module_3.py路径,自然找不到它上层bar_package

1.6K30
领券