前言
python项目使用了pyautogui库,使用pyinstaller打包后运行,提示没有找到pyautogui模块。
一、前因
在一个网页上下载文件,需要人工依次点击进入预览界面后再次点击【下载】按钮。当需要下载的文件过多时,整个过程将非常漫长而枯燥,所以使用pyautogui库来模拟人工点击操作,并且还使用tkinter写了一个简单的操作界面。但是使用pyinstaller打包这个项目之后,运行却报错了。报错信息如下:
Traceback (most recent call last):
File "main.py", line 3, in <module>
ModuleNotFoundError: No module named 'pyautogui'
二、分析解决
根据报错信息分析:在脚本中导入的pyautogui模块未找到。
导致这个错误的原因可能是系统中没有安装pyautogui模块,或者在打包过程中没有正确地包含该模块。
检查是否安装了pyautogui模块:
pip show pyautogui
没有安装的话可以使用以下命令安装:
pip install pyautogui
从检查结果可以看到pyautogui
模块安装是没有问题的。
再次打包,仍然会遇到该错误。
这时候就需要检查导入语句是否正确。确保在脚本的开头使用import pyautogui
语句导入该模块。
确认后发现导入也没有问题。
在PyInstaller的打包命令中添加--hidden-import=pyautogui
参数后再次测试:
pyinstaller -F -w --hidden-import=pyautogui main.py
测试发现仍然会报错。
在此之后更换了打包工具,使用cx_Freeze打包后运行,发现仍然提示pyautogui
不存在,此时可以排除是打包工具的问题。
突然想起是不是默认安装的pyautogui版本不兼容,考虑到这个问题后,使用以下命令重新安装低版本的pyautogui模块:
pip install pyautogui==<version>
将<version>替换为对应版本号即可,我这里使用的是0.9.30版本
再次重新使用pyinstaller打包:
pyinstaller -F -w --hidden-import=pyautogui main.py
经测试可正常运行。文章来源:https://www.toymoban.com/news/detail-767104.html
总结
注意从多方面寻找原因,重视细节问题。文章来源地址https://www.toymoban.com/news/detail-767104.html
到了这里,关于python pyinstaller pyautogui 打包报错,提示没有后找到pyautogui模块的文章就介绍完了。如果您还想了解更多内容,请在右上角搜索TOY模板网以前的文章或继续浏览下面的相关文章,希望大家以后多多支持TOY模板网!