Google登录名在没有无头但没有无头模式的情况下工作

问题描述 投票:0回答:3

im试图使用python硒和chromedriver登录我的Google帐户,该代码有效,但不能在无头模式下使用。在嗯,我得到的identifierId永远不会出现:(

编辑:添加了丢失的--disable-gpu

chrome_options = webdriver.ChromeOptions()
chrome_options.add_argument('--disable-gpu')
chrome_options.add_argument('--headless')
chrome_options.add_argument('--window-size=1920,1080')

def do_login(email, password):
    driver = webdriver.Chrome(chrome_options=chrome_options)
    driver.get('https://accounts.google.com/signin/v2/identifier?flowName=GlifWebSignIn&flowEntry=ServiceLogin')
    email_phone = WebDriverWait(driver, 10).until(EC.element_to_be_clickable((By.XPATH, "//input[@id='identifierId']")))
    email_phone.send_keys(email)
    driver.find_element_by_id("identifierNext").click()
    pw = WebDriverWait(driver, 5).until(
        EC.element_to_be_clickable((By.XPATH, "//input[@name='password']"))
    )
    pw.send_keys(password)
    driver.find_element_by_id("passwordNext").click()
    time.sleep(2)
    print(driver.title)
    driver.close()

应该以非无头模式登录

python-3.x selenium selenium-chromedriver google-login
3个回答
0
投票
chrome_options = webdriver.ChromeOptions() chrome_options.add_argument('--headless') chrome_options.add_argument('--window-size=1920,1080') chrome_options.add_argument('--disable-gpu')

这是我必须添加的内容,才能使我的无头代码正常工作。


0
投票
chrome_options = webdriver.ChromeOptions() chrome_options.add_argument('--disable-gpu') chrome_options.add_argument('--headless') chrome_options.add_argument('--window-size=1920,1080') def do_login(email, password): driver = webdriver.Chrome(chrome_options=chrome_options) driver.get('https://accounts.google.com/signin/v2/identifier?flowName=GlifWebSignIn&flowEntry=ServiceLogin') email_phone = WebDriverWait(driver, 10).until(EC.element_to_be_clickable((By.ID, "Email"))) email_phone.send_keys(email) driver.find_element_by_id("next").click() pw = WebDriverWait(driver, 5).until( EC.element_to_be_clickable((By.ID, "Passwd")) ) pw.send_keys(password) driver.find_element_by_id("signIn").click() driver.close()

-1
投票
from selenium import webdriver from selenium.webdriver.chrome.options import Options options = Options() options.add_argument('--headless') options.add_argument('--disable-gpu') # This is mandatory driver = webdriver.Chrome(CHROME_PATH, chrome_options=options)
© www.soinside.com 2019 - 2024. All rights reserved.