Есть ли в Windows эквивалент PyVirtualDisplay?
Я написал веб-скребок для помощника, чтобы сэкономить ему время на работе. Это написано в Python
, с помощью Selenium
и открыв браузер Firefox.
Я сам написал этот код на Linux-машине, которой пользуюсь PyVirtualDisplay
поэтому Firefox на самом деле не открывает и не мешает моей работе.
Как я могу заставить его работать на виртуальном дисплее на ПК с Windows?
1 ответ
Причина, по которой вы не можете бежать PyVirtualDisplay
в Windows PyVirtualDisplay использует Xvfb в качестве дисплея, а Xvfb - это сервер без дисплея для системы X Window, Windows не использует систему X Window.
не рекомендуется
Итак... что вы можете сделать, если вы настаиваете на работе с PyVirtualDisplay, это изменить Display(visible=True)
Или вы можете установить бэкэнд, как показано в API здесь.
Моя рекомендация
Не использовать PyVirtualDisplay
Вы можете использовать любой веб-драйвер, такой как драйвер Chrome, и просто добавить ChromeOptions с --headless
,
Или в вашем случае вы используете Firefox, чтобы он выглядел примерно так:
from selenium import webdriver
from selenium.webdriver.firefox.options import Options
options = Options()
options.add_argument("--headless")
driver = webdriver.Firefox(firefox_options=options, executable_path="C:\\Utility\\BrowserDrivers\\geckodriver.exe")
print("Firefox Headless Browser Invoked")
driver.get('http://google.com/')
driver.quit()
Для получения более подробной информации просто посмотрите здесь.
Надеюсь, это поможет вам!