我正在尝试登录Yahoo Japan广告平台,输入用户名和密码,然后单击“登录”按钮,我应该重定向到下一页,但我陷入了登录页面。如果我手动单击登录按钮,它将按承诺工作。
这是我实现的代码段:
chrome_options = Options()
chrome_options.add_argument('--window-size=1200,1013')
chrome_options.add_argument('--no-sandbox')
driver = webdriver.Chrome(options=chrome_options)
driver.get('https://login.bizmanager.yahoo.co.jp/login?url=https://promotionalads.business.yahoo.co.jp/ols/ss/accounts/941550/campaigns/#/')
username = config.SECRET['K']['USER']
password = config.SECRET['K']['PSWD']
username_input = driver.find_element_by_css_selector('input#user_name')
username_input.send_keys(username)
password_input = driver.find_element_by_css_selector('input#password')
password_input.send_keys(password)
login_btn = driver.find_element_by_css_selector('input.yjBtnViewLogin')
login_btn.click()
我应该重定向到https://promotionalads.business.yahoo.co.jp,请给我一些建议,谢谢。
更新: 我比较单击登录按钮提交的登录表单,其中有一个隐藏的输入,名称为_crumb。如果手动单击登录按钮,此值将正确显示在“表单数据”中,但是如果使用硒,则该值将不起作用。我想知道这是否是导致问题的原因。
答案 0 :(得分:0)
我已经解决了这个问题,不是一个棘手的方法。当我重定向到login.php时,只需再次输入用户名和密码,即可解决问题。