关于Python+selenium+chrome编译为exe更换电脑无法打开问题

前言

准备好对应版本的浏览器与驱动

这里我放置了对应的 浏览器与驱动,欢迎下载。

链接: https://pan.baidu.com/s/1SpWby5v6OPCxD4BfuNz6bw?pwd=5bse 提取码: 5bse

一、代码问题

需要将chrome浏览器与驱动放置到 代码文件区域,如下:

Browser文件内部:

python 复制代码
        chrome_options = Options()
        chrome_options.add_argument("--window-size=1920,960")  # 设置浏览器窗口大小
        chrome_options.add_argument("--disable-infobars")  # 隐藏"Chrome 正在受自动化软件控制"提示
                # 1. 浏览器参数初始化
        chrome_driver =  r"Browser/chromedriver.exe" # 浏览器驱动,注意,这里一定是相对于你当前代码的路径
        chrome_app = r"Browser/chrome.exe"  # 浏览器
        chrome_driver = ExeUtils.get_resources(chrome_driver)
        chrome_app = ExeUtils.get_resources(chrome_app)
        chrome_options.binary_location = chrome_app  # 添加浏览器

        
        if getattr(sys, 'frozen', False):
            print("已从exe包中加载chromedriver")
            # 从exe包里找chromedriver依赖驱动的情况
            chromedriver_path = os.path.join(sys._MEIPASS, "Browser/chromedriver.exe")
            service = Service(chromedriver_path)
            self.driver = webdriver.Chrome(service=service, options=chrome_options)
        else:
        # 普通情况下从本地文件路径找依赖的情况
            print("已从本地文件路径加载chromedriver")
            service = Service(chrome_driver)
            self.driver = webdriver.Chrome(service=service, options=chrome_options)

## 这段直接抄的别人的
class ExeUtils:
    """exe生成相关工具类"""
    @staticmethod
    def get_resources(path):
        """
        获取实际的资源访问路径(本地||临时)
        根据打包生成的临时目录访问资源
        或者直接运行脚本获取本地访问资源
        :param path:
        :return:
        """
        if getattr(sys, 'frozen', False):
            base_path = sys._MEIPASS
        else:
            base_path = os.path.abspath(".")
        return os.path.join(base_path, path)

打包问题

需要将所有的浏览器文件与驱动打包。

注意这里:绝对路径\Browser是刚刚圈起来的文件夹,要把文件夹全部打包进来。

python 复制代码
pyinstaller --onefile --windowed --icon=Helper.ico --hidden-import=selenium --add-data="绝对路径\Browser;Browser" Browser.py

结语

如果有问题需要欢迎咨询,有讲解的不清楚的可以评论或者私信告诉我。

相关推荐
温轻舟1 小时前
Python自动办公工具05-Word表中相同内容的单元格自动合并
开发语言·python·word·自动化办公·温轻舟
习习.y2 小时前
python笔记梳理以及一些题目整理
开发语言·笔记·python
撸码猿2 小时前
《Python AI入门》第10章 拥抱AIGC——OpenAI API调用与Prompt工程实战
人工智能·python·aigc
qq_386218992 小时前
Gemini生成的自动搜索和下载论文的python脚本
开发语言·python
vx_vxbs662 小时前
【SSM电影网站】(免费领源码+演示录像)|可做计算机毕设Java、Python、PHP、小程序APP、C#、爬虫大数据、单片机、文案
java·spring boot·python·mysql·小程序·php·idea
烤汉堡4 小时前
Python入门到实战:post请求+cookie+代理
爬虫·python
luod4 小时前
Python异常链
python
我不是QI5 小时前
周志华《机器学习---西瓜书》 一
人工智能·python·机器学习·ai
今天没ID5 小时前
Python 编程实战:从基础语法到算法实现 (1)
python
二川bro5 小时前
Python在AI领域应用全景:2025趋势与案例
开发语言·人工智能·python