#javascript #node.js #selenium-webdriver #phantomjs
Вопрос:
У меня есть приложение, которое отлично работает с Chrome, и я хотел перейти на PhantomJS, чтобы оно работало быстрее, так как оно должно проходить через множество URL-адресов.
const driver = new Builder()
.forBrowser("chrome")
.usingServer("http://localhost:4444/wd/hub")
.build();
Этот код для создания моего драйвера отлично работает chrome
, но при замене chrome
на phantomjs
я получаю следующую ошибку:
SessionNotCreatedError: Unable to create session from {
"desiredCapabilities": {
"browserName": "phantomjs"
},
"capabilities": {
"firstMatch": [
{
"browserName": "phantomjs"
}
]
}
}
Build info: version: '3.141.59', revision: 'e82be7d358', time: '2018-11-14T08:25:53'
System info: host: '', ip: '192.168.56.1', os.name: 'Windows 10', os.arch: 'amd64', os.version: '10.0', java.version: '1.8.0_301'
Driver info: driver.version: unknown
at Object.checkLegacyResponse (C:Users\Desktop\node_modulesselenium-webdriverliberror.js:553:15)
at parseHttpResponse (C:Users\Desktop\node_modulesselenium-webdriverlibhttp.js:635:13)
at Executor.execute (C:Users\Desktop\node_modulesselenium-webdriverlibhttp.js:569:28)
at processTicksAndRejections (node:internal/process/task_queues:94:5) {
remoteStacktrace: ''
}
Я также скачал и поместил PhantomJS.exe
исполняемый файл в свой каталог
Комментарии:
1. Почему вы решили использовать phantomjs, а не безголовый ChromeDriver?
2. Я забыл, что это было возможно, как мне установить chrome без головы?
3. Установка ChromeDriver в безголовый режим выполняется путем установки параметров драйвера в безголовый. Точный синтаксис зависит от используемого языка