使用无头

时间:2018-12-04 14:13:50

标签: selenium selenium-webdriver selenium-chromedriver

我最近在这里询问有关无头铬的问题,有人将其标记为重复,但是重复线程也不能解决我的问题。但是,我已经注意到是什么导致了该错误,但是我还没有找到解决该问题的方法。

当我使用options.add_argument(“ user-data-dir = selenium”)时,下面的代码不起作用。一旦我注释掉,它将立即生效。但是,我真的需要使用cookie文件夹,因为登录不仅需要名称/密码,还需要从我的银行进行识别(不,这不是银行自动化,但使用相同的授权)。

options = Options()
options.add_argument("start-maximized")
options.add_argument("disable-infobars")
options.add_argument("--disable-extensions")
options.add_argument("--disable-gpu")
options.add_argument("--disable-dev-shm-usage")
options.add_argument("--no-sandbox")
options.add_argument('--headless')
print ("Arguments loaded")

options.add_argument("user-data-dir=selenium")

browser = webdriver.Chrome(executable_path=r'C:\Users\REDACTED\Desktop\REDACTED\browser\chromedriver.exe', options=options)
browser.get('https://REDACTED')
print ("Headless Chrome Initialized")

我得到的错误是它无法登录。当我没有此硒数据目录时,这是正常的,因为该页面需要我的银行提供的标识,而当我使用硒数据目录中的cookie时,则不需要此标识。

2 个答案:

答案 0 :(得分:0)

它缺少--,应该是

options.add_argument("--user-data-dir=selenium")

或者您可能要选择个人资料selenium

options.add_argument('--profile-directory=selenium')

答案 1 :(得分:0)

添加以下args解决我的问题

options.add_argument("--remote-debugging-port=9222")