我有一个访问打印机的脚本,当 chrome 正常运行时,我的代码完全正常,但是当它无头运行时,selenium 似乎无法在网页上找到元素。
这是相关的代码:
初始化方法:
def __init__(self, ip_address):
""" Initialize a new Printer_Webpage object."""
self.ip_address = ip_address
chrome_options = Options()
chrome_options.add_argument("--headless")
chrome_options.add_argument("--disable-gpu")
chrome_options.add_argument("--window-size=1920x1080")
self.browser = webdriver.Chrome(chrome_options=chrome_options)
# Ignore lack of cert for each printer web page.
# Otherwise, can't open page.
self.browser.accept_untrusted_certs = True
Run Code Online (Sandbox Code Playgroud)
登录方式:
def login(self):
"""Navigates through the login page for the printer."""
# Open login page
self.browser.get(f'https://{self.ip_address}/wcd/top.xml')
# STEPS TO LOGIN:
# 1) Select 'Administrator' radio button and click.
self.browser.find_element_by_id('Admin').click()
# 2) Select Login button and …Run Code Online (Sandbox Code Playgroud) python selenium google-chrome selenium-chromedriver google-chrome-headless