Ubuntu18.04 Docker环境下PyInstaller user32库警告抑制方法咨询
抑制PyInstaller的user32库缺失警告
针对Ubuntu 18.04 Docker环境下PyInstaller编译时出现的「6693 WARNING: Library user32 required via ctypes not found」警告,可通过以下几种方式抑制:
命令行过滤输出
直接在PyInstaller命令后通过管道过滤掉指定警告:pyinstaller your_script.py 2>&1 | grep -v "WARNING: Library user32 required via ctypes not found"其中
2>&1将标准错误输出重定向到标准输出,grep -v用于排除包含目标警告内容的行。通过.spec文件自定义日志过滤
生成或编辑项目的.spec文件,在文件开头添加日志过滤代码:import PyInstaller.log as logging # 获取PyInstaller构建日志器 logger = logging.getLogger('PyInstaller.building.build_main') # 移除默认过滤器 logger.removeFilter(logging.defaultFilter) # 自定义过滤器,排除user32相关警告 class User32WarningFilter(logging.Filter): def filter(self, record): return not (record.levelno == logging.WARNING and 'Library user32 required via ctypes not found' in record.getMessage()) logger.addFilter(User32WarningFilter())之后使用
pyinstaller your_script.spec执行编译即可。全局降低日志级别(谨慎使用)
通过设置环境变量将PyInstaller的日志级别设为ERROR,屏蔽所有警告信息:PYINSTALLER_LOG_LEVEL=ERROR pyinstaller your_script.py此方法会隐藏所有警告,可能错过其他重要编译提示,仅在确认无需关注其他警告时使用。
内容的提问来源于stack exchange,提问作者Rain
相关产品推荐
相关产品推荐

