您现在的位置是:首页 > 技术教程 正文

python pyinstaller pyautogui 打包报错,提示没有后找到pyautogui模块

admin 阅读: 2024-03-23
后台-插件-广告管理-内容页头部广告(手机)

文章目录

  • 前言
  • 一、前因
  • 二、分析解决
  • 总结


前言

python项目使用了pyautogui库,使用pyinstaller打包后运行,提示没有找到pyautogui模块。


一、前因

在一个网页上下载文件,需要人工依次点击进入预览界面后再次点击【下载】按钮。当需要下载的文件过多时,整个过程将非常漫长而枯燥,所以使用pyautogui库来模拟人工点击操作,并且还使用tkinter写了一个简单的操作界面。但是使用pyinstaller打包这个项目之后,运行却报错了。
报错信息如下:

Traceback (most recent call last): File "main.py", line 3, in <module> ModuleNotFoundError: No module named 'pyautogui'
  • 1
  • 2
  • 3

二、分析解决

根据报错信息分析:在脚本中导入的pyautogui模块未找到。
导致这个错误的原因可能是系统中没有安装pyautogui模块,或者在打包过程中没有正确地包含该模块。
检查是否安装了pyautogui模块:

pip show pyautogui
  • 1

在这里插入图片描述
没有安装的话可以使用以下命令安装:

pip install pyautogui
  • 1

从检查结果可以看到pyautogui模块安装是没有问题的。
再次打包,仍然会遇到该错误。
这时候就需要检查导入语句是否正确。确保在脚本的开头使用import pyautogui语句导入该模块。
确认后发现导入也没有问题。
在PyInstaller的打包命令中添加--hidden-import=pyautogui参数后再次测试:

pyinstaller -F -w --hidden-import=pyautogui main.py
  • 1

测试发现仍然会报错。
在此之后更换了打包工具,使用cx_Freeze打包后运行,发现仍然提示pyautogui不存在,此时可以排除是打包工具的问题。
突然想起是不是默认安装的pyautogui版本不兼容,考虑到这个问题后,使用以下命令重新安装低版本的pyautogui模块:

pip install pyautogui==<version>
  • 1

替换为对应版本号即可,我这里使用的是0.9.30版本

在这里插入图片描述
再次重新使用pyinstaller打包:

pyinstaller -F -w --hidden-import=pyautogui main.py
  • 1

经测试可正常运行。


总结

注意从多方面寻找原因,重视细节问题。

标签:
声明

1.本站遵循行业规范,任何转载的稿件都会明确标注作者和来源;2.本站的原创文章,请转载时务必注明文章作者和来源,不尊重原创的行为我们将追究责任;3.作者投稿可能会经我们编辑修改或补充。

在线投稿:投稿 站长QQ:1888636

后台-插件-广告管理-内容页尾部广告(手机)
关注我们

扫一扫关注我们,了解最新精彩内容

搜索
排行榜