selenium登录提交失败

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

我无法通过Python使用Selenium登录网站。

我是网络抓取的新手,作为学习过程的一部分,我正试图通过Python从美国航空公司网上抓取我的帐户活动。这需要登录,这是我的代码(见下文)失败的地方。填写所有表单字段,但是,当我提交时,页面似乎刷新并清除我的条目。

检查我的表现:

  • 登录信息是正确的。我手动登录了。
  • 我已经玩了不同长度的睡眠时间。没有成功
  • 入境前清理过的表格。没有成功
  • 运行代码到(但不包括)submit()行,然后手动单击“登录”按钮。登录仍然失败。这让我觉得字段以某种方式填充不正确,但我看不出问题出在哪里。

在此先感谢您的帮助!

from selenium import webdriver
from selenium.webdriver.common.keys import Keys
import time

driver = webdriver.Chrome()
driver.get("https://www.aa.com/homePage.do")

loginId = driver.find_element_by_name("loginId")
lastName = driver.find_element_by_name("lastName")
password = driver.find_element_by_name("password")

time.sleep(2)
loginId.send_keys("my-email-here")
lastName.send_keys("my-last-name-here")
password.send_keys("my-password-here")
time.sleep(2)
password.submit()
python selenium web-scraping
1个回答
1
投票

我相信AA和其他航空公司都有复杂的机器人检测,知道你正在使用selenium来查找和操纵DOM中的元素,导致页面导航回登录。即使我做了:

driver.find()

在网页上填写字段我自己失败了,但如果我只做一个:

driver.get('https://www.aa.com')

然后填写它将允许我继续的字段。我在谷歌和reddit上发现了一些帖子,如果你做一些搜索就已经过了。还有Can a website detect when you are using selenium with chromedriver?,他们可能会采取一些方式。

© www.soinside.com 2019 - 2024. All rights reserved.