python脚本打包后无法运行exe文件的解决方案
作者:不知道用哪个昵称 发布时间:2021-02-25 23:25:35
技术栈win7+python3+selenium
之前有个需求需要实现自动化提流程,为了在任何电脑都能实现该功能,特此写了个爬虫,并将其打包成EXE文件,但在点击EXE文件是出现了问题
点击exe文件终端小黑窗一闪而过
为了看到终端是否有报错可以在该exe文件目录下输入cmd执行终端,并在终端中输入exe文件名称如下
回车后会看到报错
一开始怎么也无法找到错误所致(因为在虚拟环境都有导入selenium包),后来索性直接在windows环境下pip install selenium,成功的解决了这个问题。
在自己电脑上终于可以跑成功了,但是把文件发到其他电脑上就有另一个问题了
Microsoft Windows [版本 10.0.17763.805]
(c) 2018 Microsoft Corporation。保留所有权利。
C:\Users\jiazhiqiang-phq\Desktop\OA\dist>msg.exe
Traceback (most recent call last):
File "site-packages\selenium\webdriver\common\service.py", line 76, in start
File "subprocess.py", line 709, in __init__
File "subprocess.py", line 997, in _execute_child
FileNotFoundError: [WinError 2] 系统找不到指定的文件。
During handling of the above exception, another exception occurred:
Traceback (most recent call last):
File "msg.py", line 125, in <module>
File "msg.py", line 10, in msg
File "site-packages\selenium\webdriver\chrome\webdriver.py", line 73, in __init__
File "site-packages\selenium\webdriver\common\service.py", line 83, in start
selenium.common.exceptions.WebDriverException: Message: 'chromedriver' executable needs to be in PATH. Please see https://sites.google.com/a/chromium.org/chromedriver/home
[5880] Failed to execute script msg
原因是谷歌浏览器对应的驱动不同(我本地驱动配置了相对应的谷歌驱动的环境变量,所以代码中并没有写驱动的绝对路径)
解决方法下载对应的驱动放到exe文件同级目录下就好啦!
补充:使用pyinstaller将python程序打包成exe执行文件时遇到模块找不到的问题解决办法
在使用pyinstaller对python程序进行打包后,若打包的主程序中调用自编模块(有时第三方模块也会出现同样问题),运行exe文件出现模块找不到的问题。
这样就不能将打包后的exe文件 在其他电脑上运行。
解决办法是:
打包时加入你自编模块(或第三方模块所在文件夹路径),笔者程序中调用了shiyanshi自编模块,在D:\Pycharm\Program路径下。
因此打包时需要添加路径进行打包。
使用pyinstaller ***.py -F -p D:\Pycharm\Program命令在主程序所在文件目录下进行打包,即可解决模块找不到的问题。
可以正常运行。
以上为个人经验,希望能给大家一个参考,也希望大家多多支持脚本之家。如有错误或未考虑完全的地方,望不吝赐教。
来源:https://blog.csdn.net/zhengxiangling_02/article/details/102728403


猜你喜欢
- 导语随着网购的广泛普及,现在大部分年轻人都喜欢上了网购的方式。很多东西物美价廉,出不出户也能满足你的购买需求!尤其是中秋来临,哪些假期短回不
- 本文为Django项目创建的简单介绍,更为详细的Django项目创建,可以参考如下教程:Django入门与实践-https://www.jb
- 以下公共方法支持列表,元组,字典,字符串。内置函数Python 包含了以下内置函数:函数描述备注len(item)计算容器中元素个数del(
- 一段这样的JavaScript代码,猜猜结果如何?var i = 0, m =
- 任务:基于线程池来操作MySQL,测试单台机器读写MySQL单表的效率。思路:创建一个大小合适的线程池,让每个线程分别连接到数据库并进行读取
- 大家都知道对于一个页面来说,最基本的结构呢就是<html> <head> <!-- 头部信息内容区域
- 最近简单的对oracle,mysql,sqlserver2005的数据分页查询作了研究,把各自的查询的语句贴出来供大家学习.....(一)、
- json数据格式参见json数据格式说明。如果没操作过json数据,建议先看下上面的文章,有助于理解本文后面的内容。Go json包Mars
- 本文主要给大家介绍了关于python实现循环购物车功能的相关内容,分享出来供大家参考学习,下面来一起看看详细的介绍:示例代码# -*- co
- 前言项目中一般分测试环境(QAS),生产环境(PRD),当我们的项目经历了一次周期跨度较长的更新后,当我们发布到生产环境时,首要的任务是将新
- 今天在修改 淘宝 宝贝详情页面的时候,发现页面在 Firefox 下遇到这样一个问题:链接用图片做背景,text-indent:-9999p
- 本文主要介绍的是Python高阶函数与装饰器函数的相关内容,分享给大家,下面话不多说了,来一起看看详细的介绍吧高阶函数1、可以使用函数对象作
- 问题描述MySQL 启动成功,使用 ps -ef |grep mysql 可以看到进程,如下图:也可以在服务器登陆,如下图:但是使用 net
- 1、异常出现的场景.:在使用Hibernate做为项目持久层的情况下,需要对某一张表进行一个扩展,扩展操作便是在该表上创建一个触发器。将表中
- 为了实现Nao机器人与电脑端的TCP通信,于是研究了一下Python实现TCP通信,在网上也看到了很多例子,但大多都是在一台机器上验证。在两
- 实验目的:用socket 模拟一个微型的web服务器,当py脚本run起后,实微型web server架起了,然后用本地浏览器访问
- 题目:利用var s1=prompt("请输入任意的字符串:") ,可以获取用户输入的字符串,试编程将用户输入的字符串“
- Sample:http://www.happyshow.org/sample/20060613/nav/nav.html<!DOCTY
- 初学者可以看看。在的img标签有两个属性分别为alt和title,对于很多初学者而言对这两个属性的正确使用都还抱有迷惑,当然这其中一部分原因
- 前言首先,先说明我只是初步接触yolov7,写这篇文章的主要目的是可以让大家快速应用自己的数据集进行训练。没有接触过yolov5也没有关系,