A, Linux машина для установки Google-хром-стабильный
1, источник программного обеспечения Google-хром
Судо ВИМ /etc/yum.repos.d/google-chrome.repo
[google- хром] имя = google- хром BaseUrl = HTTP: // dl.google.com/linux/chrome/rpm/stable/x86_64 включено = 1 gpgcheck = 1 gpgkey = https: // dl.google.com/linux /linux_signing_key.pub
2, установка в зависимости от [процесс, наводит на мысль о другой отсутствующего зависимости, до https://rpmfind.net/linux/rpm2html/search.php имен пакетов запроса выполнения оборотов в минуту , соответствующий Sudo ням установить -y установлен на]
Sudo ням установить https: // mirrors.dotsrc.org/fedora-epel/7/x86_64/Packages/e/epel-release-7-11.noarch.rpm -y Sudo ням установить Xvfb - у Sudo ням установить Xorg-x11 -fonts * - у Sudo ням установить https: // rpmfind.net/linux/fedora/linux/development/rawhide/Everything/x86_64/os/Packages/l/liberation-fonts-common-2.00.5-6.fc32. noarch.rpm -y Sudo ням установить https: // rpmfind.net/linux/fedora/linux/development/rawhide/Everything/x86_64/os/Packages/l/liberation-mono-fonts-2.00.5-6.fc32. noarch.rpm -y Судо ни установить https: // rpmfind.net/linux/fedora/linux/development/rawhide/Everything/x86_64/os/Packages/l/liberation-sans-fonts-2.00.5-6.fc32.noarch.rpm - и Судо ни установить https: // rpmfind.net/linux/fedora/linux/development/rawhide/Everything/x86_64/os/Packages/l/liberation-serif-fonts-2.00.5-6.fc32.noarch.rpm - и Судо ни установить - и https: // rpmfind.net/linux/fedora-secondary/development/rawhide/Everything/ppc64le/os/Packages/l/liberation-fonts-2.00.5-6.fc32.noarch.rpm -И
3, монтаж Google-хром-стабильна
Sudo ням установить Google-хром-стабильный -y
Во-вторых, подготовить клиента [WebDriver выдается на сервер с клиентом]
общественный статический драйвер WebDriver;
/ ** * инициализировать драйвер * @throws Exception * / общественного недействительный initDriver () бросает исключение { String , путь; File File; Струнный OSNAME = System.getProperty ( "os.name" ) .toLowerCase ();
// делает прочной версию WebDriver из, загружается в память при инициализации драйвера, конфигурация динамический вызов IF (GetClass (). getResource ( "/") == нуль ) { Строка chromePath = "водители /." Concat (osName.startsWith ( "Windows")? ContextUtils. getContextStr (CHROME_DRIVER_WINDOWS): osName.startsWith ( " макинтош")?ContextUtils.getContextStr (CHROME_DRIVER_MAC): ContextUtils.getContextStr (CHROME_DRIVER_LINUX)); Путь = String.Format ( "% s% Starget% s% s", System.getProperty ( "base.dir" ), File.separator, File.separator, chromePath); Файл = новый файл (путь); } Еще { Строка chromePath = "Драйверы /" CONCAT (osName.startsWith ( "окна") ContextUtils.getContextStr (CHROME_DRIVER_WINDOWS).? OsName.startsWith ( "макинтош")? ContextUtils.getContextStr (CHROME_DRIVER_MAC): ContextUtils.getContextStr (CHROME_DRIVER_LINUX )); Путь = String.Format ( "% s% s% s",) .getPath (), File.separator, chromePath); Файл = новый файл (путь); если (File.Exists () == ложный ) { FileUtils.copyInputStreamToFile ( новый ClassPathResource (chromePath) .getInputStream (), новый файл (путь)); } } Если (! OsName.startsWith ( "окна" )) { попробуйте { Runtime.getRuntime () EXEC (string.Format (. "CHMOD 777% S" , путь)); } Задвижка (Исключение экс) { } } CartierSystemSettings SystemSettings = systemSettingsMapper.selectValueByCode (ChromeDriverService.CHROME_DRIVER_WHITELISTED_IPS_PROPERTY); если ( нуль =! SystemSettings) { System.setProperty (ChromeDriverService.CHROME_DRIVER_WHITELISTED_IPS_PROPERTY, systemSettings.getValue ()); } Logger.info ( "webdriver.chrome.driver = {}" , путь); System.setProperty (ChromeDriverService.CHROME_DRIVER_EXE_PROPERTY, путь); ChromeOptions опции = getChromeOptions (OSNAME); драйвер = новыйChromeDriver (варианты); } / ** *对非макинтош & Windows , 系统开启隐藏头模式 * @param OSNAME * @return * / общественного пользования статические ChromeOptions getChromeOptions (String OSNAME) { Параметры ChromeOptions = новые ChromeOptions (); если (! osName.startsWith ( "макинтош") && osName.startsWith ( "окна" )) { options.addArguments ( "--headless" ); options.addArguments ( "--disable-ГПУ" ); options.addArguments ( ); }"--no-песочница" options.addArguments ( "--verbose" ); options.addArguments ( "окно размером = 1920x1920" ); вернуться варианты; }