Я использую Robot Framework с PhantomJS (безголовый браузер) и хочу загрузить файл. Но PhantomJS не имеет каких-либо желаемых возможностей или параметров для установки предпочтений, как мы это делаем в Chrome. Ищете предложения или другие варианты загрузки файла CSV с помощью PhantomJS с Robot Framework.
Как скачать файл с phantomJS с помощью Robot Framework?
comment
Есть ли причина, по которой вы предпочитаете PhantomJS Chrome для работы в браузере без головы? Начиная с версии 59 Chrome, есть поддержка Mac и Linux, а Windows была добавлена в версии 60. Текущая версия - 62.
- person A. Kootstra   schedule 28.11.2017
comment
Я никогда не пробовал браузер Chrome без головы, используя PhantomJS, так как мне нужно запустить этот код на сервере. Спасибо
- person Madasu   schedule 29.11.2017
Ответы (1)
Как вы подчеркнули, проблема не в загрузке файлов. Ниже вы найдете пример скрипта робота, который запускает Chrome в режиме Headless.
*** Settings ***
Library Selenium2Library
Suite Teardown Close All Browsers
*** Test Cases ***
Headless Chrome - Open Browser
${chrome options}= Evaluate sys.modules['selenium.webdriver'].ChromeOptions() sys, selenium.webdriver
${prefs} Create Dictionary credentials_enable_service=${false} # Verberg de sla wachtwoord op pop-up
Call Method ${chrome_options} add_experimental_option prefs ${prefs}
Call Method ${chrome options} add_argument start-maximized # Open de browser in gemaximaliseerd.
Call Method ${chrome_options} add_argument --headless
Call Method ${chrome_options} add_argument --disable-gpu
Call Method ${chrome_options} add_argument --window-size\=1920,1080
Create Webdriver Chrome chrome_options=${chrome options}
Go To http://cnn.com
Capture Page Screenshot
Если вы хотите работать в автономном режиме в среде Grid, используйте следующий пример:
*** Settings ***
Library Selenium2Library
Suite Teardown Close All Browsers
*** Test Cases ***
Headless Chrome - Create Webdriver2
${chrome options} = Evaluate sys.modules['selenium.webdriver'].ChromeOptions() sys, selenium.webdriver
Call Method ${chrome_options} add_argument --window-size\=1920,1080
Call Method ${chrome options} add_argument --start-maximized
Call Method ${chrome options} add_argument --headless
Call Method ${chrome options} add_argument --disable-gpu
${options}= Call Method ${chrome_options} to_capabilities
Create Webdriver Remote command_executor=http://localhost:4444/wd/hub desired_capabilities=${options}
Go to http://cnn.com
Capture Page Screenshot
person
A. Kootstra
schedule
29.11.2017
Когда я попробовал ваш код (первый вариант), он дал мне
unrecognized Chrome version: HeadlessChrome/62.0.3202.94
ошибку.
- person Brandon Olson; 01.12.2017
Ничего, проблема в ChromeDriver. 2.29 и ниже не поддерживают хром без головы.
- person Brandon Olson; 01.12.2017