python - 阻止 selenium 在每次启动时创建新的 Firefox 配置文件
问题描述
我正在使用一个朋友的代码,该代码每次启动都会创建一个新的 Firefox 配置文件,我想使用我自己的配置文件,而不是新的配置selenium
文件yaml
这是代码的一部分,我一直在搜索并尝试一切来解决问题,但我不知道该怎么做:
from selenium.webdriver.firefox.options import Options
from selenium import webdriver
import yaml
import os
with open("assets/config.yaml", "r") as config:
config = yaml.safe_load(config)
options = Options()
if config.get("settings").get("headless"):
options.headless = True
profile = webdriver.Firefox(executable_path=config.get("settings").get("firefox"), service_log_path=os.path.devnull if not config.get("settings").get("log") else config.get("settings").get("log"), options=options)
这是来自 config.yaml 的代码:
settings:
headless: False
firefox: assets/geckodriver.exe
log: null
解决方案
我已经将它与 Java 一起使用,所以通常你可以按照以下步骤操作:
- 创建一个配置文件,使用
Firefox.exe -p
它在“C:\Users\xUser\AppData\Roaming\Mozilla\Firefox\Profiles”中创建它作为xyz.Selenium
. - Python 绑定中应该有一个
FirefoxProfile
类。 - 将该文件传递给该类并使用驱动程序对象中的配置文件对象。
推荐阅读
- android - Facebook 开发者预览版的 APK 架构
- performance - Julia 1.0 中的慢(重复)矩阵乘法
- c# - C#程序更改鼠标灵敏度
- c# - 将列值存储为参数
- excel - 使用python在excel中查找丢失的日期
- scripting - Windbg 脚本 - 自动解析堆栈的每一帧
- python-3.x - 我想重新训练 inception-resnet-v2,但 GPU 内核不可用
- python - Python - 从另一个脚本调用 python 函数
- java - 服务背景
- android-studio - Android studio 3.1.4 - 未能下载示例索引(尝试下载谷歌代码示例时)