Selenium与Python:send_keys()在无头ubuntu上不起作用

黑祖德

我正在使用python Selenium,在digitalocean上使用无头的ubuntu,上面装有无头的Chrome。我用了

driver.find_element_by_tag_name('body').send_keys(Keys.CONTROL + Keys.TAB)

在senium.webdriver.common.keys

但这是行不通的。

我导入了所需的所有内容,没有python语法错误,并且运行成功,但是选项卡未与我的代码切换。

driver.find_element_by_tag_name('body').send_keys(Keys.CONTROL + 't')

也行不通。可以在具有物理键盘和监视器的本地计算机上的选项卡之间切换相同的代码。顺便说一句,我在无头的Chrome上使用了pyvirtualdisplay。

我怀疑在其上使用无头的Ubuntu和无头的Chrome可能会导致此问题。我猜无头的Ubuntu无法发送密钥,如上面的代码所示。

如何让我的远程无头Ubuntu将密钥发送到浏览器?

安德森

这是的著名问题chromedriverChromium开发人员团队的评论

这是我们在ChromeDriver中模拟键盘输入的方式的限制。密钥将直接发送到渲染过程,而绕过浏览器过程。因此,sendKeys()不会调用浏览器进程中的任何键盘快捷键处理程序。

您可以改用以下代码:

driver.execute_script("window.open('url_of_page_to_get', 'new_window')")

这将允许您URL在新标签页中打开

附注:如果解决了您的问题,或者在出现问题时让我知道,请将此答案标记为“已接受”

本文收集自互联网,转载请注明来源。

如有侵权,请联系[email protected] 删除。

编辑于
0

我来说两句

0条评论
登录后参与评论

相关文章

来自分类Dev

Python Selenium send_keys不起作用

来自分类Dev

Python selenium send_keys 在 chrome 中不起作用

来自分类Dev

Python Selenium:输入文本框,send_keys不起作用

来自分类Dev

selenium python 的 send_keys() 方法有时不起作用

来自分类Dev

send_keys在Django测试中不起作用

来自分类常见问题

Python硒-send_keys或JS设置的值不起作用

来自分类Dev

Python硒-send_keys或JS设置的值不起作用

来自分类Dev

Selenium Webdriver在无头模式下不起作用

来自分类Dev

send_Keys 因 Chromedriver 无头而失败

来自分类Dev

如果输入type =“ number”,则硒send_keys不起作用

来自分类Dev

在Chrome中context_click之后,webdriver send_keys不起作用

来自分类Dev

python Selenium AttributeError与send_keys

来自分类Dev

Selenium和Chrome-send_keys不起作用

来自分类Dev

Express在Ubuntu上不起作用

来自分类Dev

HDMI在Ubuntu 13.04上不起作用

来自分类Dev

无线在Ubuntu 13.10上不起作用

来自分类Dev

Localhost .htaccess在Ubuntu上不起作用

来自分类Dev

Syntastic在Ubuntu上不起作用

来自分类Dev

pkill在Ubuntu 16.04上不起作用

来自分类Dev

startx在ubuntu 16.04上不起作用

来自分类Dev

npm在ubuntu 16.04上不起作用

来自分类Dev

xboxdrv在Ubuntu 17.10上不起作用

来自分类Dev

Ubuntu共享在Windows上不起作用

来自分类Dev

USB在Ubuntu上不起作用

来自分类Dev

声音在Ubuntu 16.04上不起作用

来自分类Dev

Snap在Ubuntu 16.04上不起作用

来自分类Dev

Timeshift在Ubuntu 18.04上不起作用

来自分类Dev

音频在 Ubuntu 18.10 上不起作用

来自分类Dev

声音在 Ubuntu 上不起作用