Почему я не могу создать экземпляр объекта chromeoptions с селеном в powershell? - PullRequest
0 голосов
/ 16 мая 2018

Я пытаюсь использовать Powershell v5.1 на компьютере под управлением Windows 10 для автоматизации задач chrome с помощью хроматографа Selenium, и у меня возникают проблемы при создании объекта ChromeOptions в PS после импорта всех соответствующих библиотек. Каждый источник, который я нашел, говорит, что правильное создание объекта выполняется так:

ChromeOptions options = new Chromeoptions();

Но это приводит к этой ошибке:

At line:1 char:43
+ chromeoptions options = new chromeoptions();
+                                           ~
An expression was expected after '('.
     + CategoryInfo          : ParserError: (:) [], ParentContainsErrorRecordException
     + FullyQualifiedErrorId : ExpectedExpression

Это после того, как я импортировал эти:

add-type -path "D:\\selenium\selenium.webdriverbackedselenium.dll"
add-type -path "D:\\selenium\thoughtworks.selenium.core.dll"
add-type -path "D:\\selenium\webdriver.support.dll"
add-type -path "D:\\selenium\webdriver.support.dll"

Мне не хватает каких-либо dll, необходимых для создания экземпляров объектов chromeoptions? Я могу нормально открыть chrome с помощью chromedriver и нормально перемещаться, но мне нужно настроить некоторые вещи перед тем, как он откроется, или это по сути бесполезно для меня. Спасибо за любую помощь!

1 Ответ

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

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

Вы копируете код C # и ожидаете, что он будет работать.Вам нужно преобразовать его в код PS (или запустить как код C # в PS)

ChromeOptions options = new Chromeoptions();

становится

$chromeOptions = New-Object OpenQA.Selenium.Chrome.ChromeOptions

$ chromeOptions теперь имеет методы и свойства, к которым вы можете обращаться, напримернапример, AddArgument.

После создания объекта ChromeOptions необходимо добавить его в драйвер.

$driver = New-Object OpenQA.Selenium.Chrome.ChromeDriver($chromeOptions)
...