我正在使用ROBOT框架,需要创建一个具有代理功能的webdriver以无头模式访问sharklasers.com网站,该网站具有以CMD或无头模式访问的防火墙,但是它无法正常工作,我尝试了多种选择。 。但是它不起作用。 注意:我可以在Java中找到一些选项,但在Robot Framework中找不到
我尝试使用--proxy-server,http_proxy参数。两者均不起作用
${options}= Evaluate sys.modules['selenium.webdriver'].ChromeOptions() sys, selenium.webdriver
log ${options}
Call Method ${options} add_argument headless
Call Method ${options} add_experimental_option useAutomationExtension ${FALSE}
Call Method ${options} add_argument headless
Call Method ${options} add_argument disable-gpu
Call Method ${options} add_argument --disable-extensions
Call Method ${options} add_argument --no-sandbox
Call Method ${options} add_argument --proxy-server=bcppx-el01-int.uhc.com:8080
Create Webdriver Chrome executable_path=${CURDIR}/../../Drivers/chromedriver.exe chrome_options=${options}
$ I在下面的代码下也尝试了
${args}= Create List --proxy-server=bcprx-elr01-int.uhc.com:8080
${chrome_proxyoptions}= Create Dictionary args=${args}
Create WebDriver Chrome executable_path=${CURDIR}/../../Drivers/chromedriver.exe chrome_options= ${chrome_proxyoptions}
预期:浏览器应打开 代码块1的实际结果:
20191021 21:35:30.389 : INFO : ${options} = <selenium.webdriver.chrome.options.Options object at 0x0000000017B0A240>
20191021 21:35:30.404 : FAIL : Calling method 'add_argument' failed: TypeError: add_argument() got an unexpected keyword argument '--proxy-server'
代码块2的实际结果:
20191021 21:39:26.073 : INFO : Sharktest
20191021 21:39:26.077 : INFO : ${args} = [u'--proxy-server=bcprx-elr01-int.uhc.com:8080']
20191021 21:39:26.079 : INFO : ${chrome_proxyoptions} = {u'args': [u'--proxy-server=bcprx-elr01-int.uhc.com:8080']}
20191021 21:39:26.082 : INFO : Creating an instance of the Chrome WebDriver.
20191021 21:39:26.084 : INFO : Cannot capture screenshot because no browser is open.
20191021 21:39:26.089 : FAIL : AttributeError: 'unicode' object has no attribute 'to_capabilities'