Как автоматически установить путь к chromedriver? - PullRequest
0 голосов
/ 03 мая 2018

У меня есть программа, которую я раздаю своим друзьям и использую хромовый драйвер селена. Для многих из них очень раздражает / сложно вводить путь к chromedriver каждый раз, когда они хотят использовать программу. Есть ли способ автоматически определять и задавать для них путь к хромированному драйверу?

Это строка кода, которую я должен использовать, чтобы установить путь к хромированному драйверу

System.setProperty("webdriver.chrome.driver", "C:/users/blake/Desktop/chromedriver.exe");

Я хочу знать, как сделать так, чтобы «C: /users/blake/Desktop/chromedriver.exe» автоматически определялся, а не вводился вручную.

Спасибо!

Ответы [ 5 ]

0 голосов
/ 03 мая 2018

Вы можете сделать это двумя способами.

1) Установите путь для chromedriver к папке resources. Обычно он создается автоматически при создании проекта Maven. Или это может быть любая другая папка в структуре проекта.

System.setProperty("webdriver.chrome.driver", "src\\main\\resources\\chromedriver.exe"); // "[folder]\\chromedriver.exe"

2) Если вы не укажете "webdriver.chrome.driver" свойство Selenium будет искать драйвер в вашей папке C:\Windows.

0 голосов
/ 03 мая 2018
from selenium import webdriver
import os 
from os.path import expanduser

User = expanduser("~")

driver = webdriver.Chrome(executable_path=(User)+'/Desktop/chromedriver')

это потянет пользовательский каталог пользователя, и все, что вам нужно сделать, это попросить его переместить хромированный драйвер туда. Рабочий стол

0 голосов
/ 03 мая 2018

Вы можете поместить драйвер в домашнюю папку и попросить Java выполнить поиск в домашней папке.

System.setProperty("webdriver.gecko.driver", new File(System.getProperty("user.home"), "chromedriver.exe").getAbsolutePath());

Это не зависит от ОС.

0 голосов
/ 03 мая 2018

Вы можете создать папку внутри своего проекта и поместить туда chromedriver.exe. Каждый раз, когда вы делитесь своим проектом с другими, им не нужно загружать chromedriver.

Ниже строки кода вы можете включить в свой код: -

String path = System.getProperty("user.dir");   // return project folder path

String driverpath = path + "\\driverfolder\\chromedriver.exe";   // return driver folder path 

System.setProperty("webdriver.chrome.driver",driverpath );
0 голосов
/ 03 мая 2018

Чтобы установить и определить драйвер Chrome, вы можете включить файл chromedriver.exe в папку вашего проекта и указать путь к драйверу, соответствующий папке проекта.

Синтаксис:

filepath=  "./folderName/chromedriver.exe";

OR

filepath= ".\\chromedriver.exe";

Здесь точка (.) Включает путь проекта, рабочий набор, в котором вы работаете. используя эту логику, каждый раз, когда нам не нужно определять и обновлять путь к драйверу.

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...