Я выполняю определенную работу по очистке с селеном на узле, и код успешно выполняется на моем локальном Mac.Однако я пытаюсь сделать то же самое на демонстрационном экземпляре Google Compute vm, и я не уверен, как правильно настроить geckodriver.Может кто-нибудь подсказать мне?
Вот такой вывод я получаю:
/home/dee_m316/node_modules/selenium-webdriver/firefox:1
(function (exports, require, module, __filename, __dirname) { ELF
^
SyntaxError: Invalid or unexpected token
at createScript (vm.js:80:10)
at Object.runInThisContext (vm.js:139:10)
at Module._compile (module.js:617:28)
at Object.Module._extensions..js (module.js:664:10)
at Module.load (module.js:566:32)
at tryModuleLoad (module.js:506:12)
at Function.Module._load (module.js:498:3)
at Module.require (module.js:597:17)
at require (internal/module.js:11:18)
at Object.<anonymous> (/home/dee_m316/node_modules/selenium-webdriver/index.js:32:17)
Код в порядке, но я чувствую, что он пытается прочитать мой geckodriver в виде файла вместо исполняемого файла иликакая-то такая проблема.Его или это или не на моем пути.
code /
const {Builder, By, Key, until} = require('selenium-webdriver');
var sleep = require('sleep');
const firefox = require('selenium-webdriver/firefox');
const screen = {width: 640, height: 480}; //size of headerless browser
let driver = await new Builder().forBrowser('firefox').setFirefoxOptions(new firefox.Options().headless().windowSize(screen)).build(); //for headerless mode
Моя ОС - это Ubuntu 18.04.
My code runs in the /home/dee_m316/j.js
#directory. На этом же уровне находится скрипт geckodriver, и он скопирован в:
/home/dee_m316/node_modules/selenium-webdriver/geckodriver
/home/dee_m316/node_modules/selenium-webdriver/firefox
/home/dee_m316/node_modules/selenium-webdriver/firefox.exe
Я пробовал:
export PATH="$PATH":/home/dee_m316/node_modules/selenium-webdriver/
и
node j.js --binary /home/deep_m316/node_modules/selenium-webdriver/firefox.exe
, но ошибка та же.Что не так?