【发布时间】:2016-09-17 03:52:58
【问题描述】:
我想通过 Webdriver 在 Chrome 中通过其热键启动一个扩展(解压缩)。我无法在正在运行的 ChromeDriver 实例中使用热键/快捷键。谁能告诉我,怎么做?
这是到目前为止的代码:
from selenium import webdriver
from selenium.webdriver.chrome.options import Options
chrome_options = Options()
chrome_options.add_argument("load-extension=C:\\Users\\...\\AppData\\Local\\Google\\Chrome\\User Data\\Default\\Extensions\\blablabla\\4.3.25_0")
browser = webdriver.Chrome(chrome_options=chrome_options)
这会使用扩展程序启动新的 Chrome,但不包括原始热键。我的想法是添加一些选项或能力或首选项,但还没有找到类似的东西。
如果我可以创建一个新配置文件、安装扩展程序、设置热键并使用此配置文件启动 Chrome 也可以,但我还需要以编程方式创建这些配置文件的步骤。
感谢您的任何反馈!
【问题讨论】:
-
How to send Keyboard Shortcuts to browser using Selenium and Nodejs -
WebDriver cannot be used todo browser specific actions, it can only be used to drive the web-page所以你必须使用 python 发送热键,应该有很多可谷歌搜索的例子。 -
您好,谢谢,但问题不在于如何发送热键,例如可以使用 pyautogui.hotkey('ctrl', 'v') 轻松完成。问题是,如何设置添加的扩展,使其包含可以通过 Python 启动它的热键。对此有什么想法吗?
-
我明白了。尝试Automate a button click on chrome://extensions page using selenium webdriver - 导航到
chrome://extensions,找到并单击shortcuts链接,找到并单击扩展程序的热键输入框,确保窗口处于活动状态并使用pyautogui 发送热键。另请注意,扩展程序的清单中必须有browserAction或commands键。 -
@wOxxOm 请不要在 cmets 中写出相当于扩展答案的内容吗?
-
显然这只是基于盲目谷歌搜索的猜测。用多余的解释来避免“你是什么意思”的后续行动。称其为扩展答案过于夸张。
标签: python-3.x selenium-webdriver google-chrome-extension selenium-chromedriver hotkeys