Установите метод предпочтения, дающий ошибку компиляции как «Аргумент не является обязательным» в SeleniumVBA - PullRequest
0 голосов
/ 24 декабря 2018

Я пытаюсь использовать метод SetPreference() в Selenium с VBA для входа на сайт, используя данные пользователя.

Ниже приведен код.

Sub setttt()

    Dim driver As New ChromeDriver    
    Set driver = New ChromeDriver
    driver.Get ("https:www.gmail.com/")    
    driver.AddArgument ("--no-sandbox")      
    driver.SetPreference ("user-data-dir=C:/Users/sagar/AppData/Local/Google/Chrome/User Data/Default")
    driver.Wait (500)

End Sub

Я получаю компиляциюошибка

Аргумент не является обязательным

Пожалуйста, помогите, если я что-то здесь упустил.

Ответы [ 2 ]

0 голосов
/ 25 декабря 2018

У вас есть пара других проблем с вашим кодом.Во-первых, вам нужно установить профиль каталога пользователя prior для запуска Chrome.Таким образом, это должно быть установлено перед использованием метода .Get().

Кроме того, если вы используете Dim .. As New в своем объявлении, вам не нужно Set .. = New позже.

Наконец, вместо использования .SetPreference() для захвата вашего профиля пользователя, просто используйте .SetProfile() с persistent:=True.

И я должен также упомянуть, что вам не нужно включать \Default в профильэто включается автоматически;и я бы предпочел использовать %USERPROFILE% вместо жесткого кодирования имени пользователя в пути к файлу.

Dim driver As New ChromeDriver

driver.SetProfile "%USERPROFILE%\AppData\Local\Google\Chrome\User Data", True
driver.AddArgument "--no-sandbox"
driver.Get "https://www.gmail.com/"

Для вашей конкретной проблемы этот код ошибки подразумевает, что вы пропустили необходимыйаргумент..SetPreference требуется два аргумента:

  1. Ключ
  2. Значение

Но вы предоставили только один.

0 голосов
/ 25 декабря 2018

Попробуйте удалить скобки

driver.AddArgument "--no-sandbox"

, если проблема не решена, попробуйте с помощью

driver.Get "https:www.gmail.com/"
driver.AddArgument "--no-sandbox"
driver.SetPreference "user-data-dir", "C:/Users/sagar/AppData/Local/Google/Chrome/User Data/Default"
Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...