Сведения о среде:
- ОС: Linux (Docker-контейнер)
- Версия PowerShell: 7.3.9
- Версия модуля Selenium: 3.0.1 (установлена из PSGallery)
- Установленный модуль Selenium:
Результат: Модуль успешно установлен и импортирован.
Код: Выделить всё
Install-Module -Name Selenium -Force Import-Module Selenium Get-InstalledModule -Name Selenium - < strong>Проверенные двоичные файлы WebDriver:
Результат: Все двоичные файлы расположены в /usr/bin/ и являются исполняемыми.
Код: Выделить всё
which chromedriver which google-chrome which firefox which geckodriver - Настройка Xvfb (безголовый сервер):
Ошибка: Неустранимая ошибка сервера: сервер уже активен для дисплея 99.
Код: Выделить всё
Xvfb :99 -screen 0 1920x1080x24 & export DISPLAY=:99
Попытка исправить: удален файл блокировки и повторена попытка:Результат: Процесс запустился без ошибок после удаления файла блокировки.Код: Выделить всё
rm -f /tmp/.X99-lock Xvfb :99 -screen 0 1920x1080x24 & export DISPLAY=:99 - Попытка создать параметры Chrome в PowerShell:
Ошибка: Новый объект: невозможно найти тип [OpenQA.Selenium.Chrome.ChromeOptions]: убедитесь, что сборка, содержащая этот тип, загружена. >
Код: Выделить всё
$ChromeOptions = New-Object OpenQA.Selenium.Chrome.ChromeOptions $ChromeOptions.AddArgument("--headless") $ChromeOptions.AddArgument("--no-sandbox") $ChromeOptions.AddArgument("--disable-dev-shm-usage") $ChromeOptions.AddArgument("--disable-gpu") - Попытка запустить Chrome в автономном режиме:
Ошибка: Start-SeChrome: не найден параметр, соответствующий имени параметра «ChromeOptions».
Код: Выделить всё
$Driver = Start-SeChrome -ChromeOptions $ChromeOptions
< /li>
Попытка загрузки DLL вручную:Ошибка: Тип добавления: невозможно привязать параметр «Путь» к цели. Настройка исключения «Путь»: невозможно найти путь...Код: Выделить всё
Add-Type -Path "/root/Selenium/Selenium/WebDriver.dll" Add-Type -Path "/root/Selenium/Selenium/WebDriver.Support.dll" - Проверен путь к модулю Selenium:
Результат: Путь к модулю Selenium получен правильно.
Код: Выделить всё
$Module = Get-Module Selenium $ModulePath = $Module.ModuleBase - < strong>Попробовал запустить Firefox:
Ошибка: Новый объект: невозможно найти тип [OpenQA.Selenium.Firefox.FirefoxOptions]: убедитесь, что сборка, содержащая этот тип, загружена. >
Код: Выделить всё
$FirefoxOptions = New-Object OpenQA.Selenium.Firefox.FirefoxOptions $FirefoxOptions.BrowserExecutableLocation = "/usr/bin/firefox" $Driver = Start-SeFirefox -FirefoxOptions $FirefoxOptions
- в PowerShell.
Код: Выделить всё
Cannot find type [OpenQA.Selenium.Chrome.ChromeOptions] Код: Выделить всё
Start-SeChrome: A parameter cannot be found that matches parameter name 'ChromeOptions'.- при загрузке DLL вручную.
Код: Выделить всё
Cannot find path '/root/Selenium/Selenium/WebDriver.dll' - Проблемы с запуском Xvfb из-за активной блокировки сервера отображения.
Подробнее здесь: https://stackoverflow.com/questions/792 ... inux-image