Как изменить путь к драйверу chrome, не закрывая chrome?

#excel #selenium #selenium-chromedriver

Вопрос:

Есть ли какой-либо способ изменить путь к папке загрузки chrome, не закрывая chrome?

 Dim bot As New ChromeDriver bot.SetPreference "download.default_directory", "c:temp" bot.SetPreference "download.directory_upgrade", True bot.SetPreference "download.prompt_for_download", False bot.Get "http://google.com" bot.Quit  

Комментарии:

1. Эта линия bot.SetPreference "download.default_directory", "c:temp" должна выполнять свою работу. С какой ошибкой вы столкнулись?

2.Привет, @NandanA Я пытался сделать, как показано ниже Dim bot As New ChromeDriver Dim j As Long lastrow = Worksheets("sheet1").Cells(Rows.Count, "A").End(xlUp).Row , Для J = 2, чтобы продолжить bot.SetPreference "download.default_directory", "c:temp" bot.SetPreference "download.directory_upgrade", True bot.SetPreference "download.prompt_for_download", False bot.Get "http://google.com" bot.getelement to download Следующий J End Sub в следующем j путь chrome должен измениться, но он не менялся

Ответ №1:

Я предполагаю, что вы немного запутались в расположении папки загрузки браузера Chrome и месте загрузки драйвера Chrome.

Браузер Chrome:

  • У вас на компьютере есть браузер Chrome, и, допустим, его папка загрузки находится в C:/Download/
  • Если вы запустите сценарий selenium для загрузки какого-либо файла по умолчанию, драйвер chrome будет использовать местоположение загрузки в качестве C:/Download/

Драйвер Chrome:

  • В своем коде вы изменили расположение по умолчанию с C:/Download/ на C:/Custom/ , используя download.default_directory предпочтения, после чего файлы будут загружены в новое расположение.
  • Изменение местоположения загружаемого файла применимо только для драйвера chrome, но не для браузера chrome. Местоположение вашего браузера chrome по умолчанию остается таким же C:/Download/

В приведенном ниже примере я загрузил файл, изменив расположение папки загрузки.

Код:

 Dim bot As New ChromeDriver bot.SetPreference "download.default_directory", "C:UsersNandanDesktop"  bot.SetPreference "download.directory_upgrade", True  bot.SetPreference "download.prompt_for_download", False  bot.Get "https://www.hkex.com.hk/Market-Data/Securities-Prices/Equities/Equities-Quote?sym=700amp;sc_lang=en"  bot.FindElementByLinkText("Export to Excel").Click  bot.Timeouts.Server = 5000  End Sub  

Выход:

введите описание изображения здесь

Комментарии:

1. Я думаю, что вопрос ОП заключался в том, как измениться c:temp во время выполнения.

2. @DebanjanB Спасибо за ваш ответ. Разве изменение предпочтения местоположения загрузки перед запуском драйвера не называется временем выполнения?

3. перед запуском -gt; Время компиляции (возможно), gt; во время выполнения программы -gt; Время выполнения (невозможно), так как настройки уже заданы в настройках профиля.

4. Спасибо, но, насколько мне известно, нет способа изменить настройки драйвера во время выполнения.

5. Да, вы правы !!!