首页 >后端开发 >Python教程 >如何在 EC2 实例上的 Xvfb 中运行 Selenium Headless?

如何在 EC2 实例上的 Xvfb 中运行 Selenium Headless?

Barbara Streisand
Barbara Streisand原创
2024-12-01 09:02:14847浏览

How to Run Selenium Headless in Xvfb on an EC2 Instance?

在 Xvfb 中运行 Selenium

问题描述:

尝试在 Xvfb 中运行 Selenium 时在 EC2 实例上,用户遇到错误:“无法打开显示: :0"。

解决方案:

要在 Xvfb 无头模式下运行 Selenium,请使用 PyVirtualDisplay 或适用于 Python 的 xvfbwrapper。

PyVirtualDisplay方法:

from pyvirtualdisplay import Display
from selenium import webdriver

display = Display(visible=0, size=(800, 600))
display.start()

browser = webdriver.Firefox()
browser.get('http://www.google.com')
print browser.title
browser.quit()

display.stop()

Xvfbwrapper 方法:

from xvfbwrapper import Xvfb

vdisplay = Xvfb()
vdisplay.start()

# launch stuff inside virtual display here

vdisplay.stop()

将 xvfbwrapper 与上下文管理器一起使用:

from xvfbwrapper import Xvfb

with Xvfb() as xvfb:
    # launch stuff inside virtual display here
    # It starts/stops in this code block.

以上是如何在 EC2 实例上的 Xvfb 中运行 Selenium Headless?的详细内容。更多信息请关注PHP中文网其他相关文章!

声明:
本文内容由网友自发贡献,版权归原作者所有,本站不承担相应法律责任。如您发现有涉嫌抄袭侵权的内容,请联系admin@php.cn