【发布时间】:2018-03-28 18:00:53
【问题描述】:
我正在尝试使用 selenium 和 chromedriver 从 Discover 网站筛选我自己的信用卡信息。作为响应,它返回错误:
目前无法访问您的帐户。
过时的浏览器会使您的计算机面临安全风险。要得到 Discover.com 上的最佳体验,您可能需要更新您的 浏览器到最新版本,然后重试。
有趣的是,如果我编写一个脚本来打开一个带头的浏览器并输入一些随机的帐户和密码,它就可以正常工作。但是如果脚本首先接触网页然后我输入,我会收到上述错误消息。有效的脚本是:
import time
from selenium import webdriver
driver = webdriver.Chrome()
driver.execute_script('window.location.href = "https://portal.discover.com/customersvcs/universalLogin/ac_main";')
如果我将这些行附加到脚本并在睡眠结束后键入,则会失败:
time.sleep(5)
driver.find_element_by_id('userid-content').click()
我尝试了其他方法将数据输入页面,例如 send_keys 和执行 Javascript 来修改页面,它们都以同样的方式失败。
网站如何检测遥控器?有没有办法绕过它?
【问题讨论】:
-
不一样。在这个问题上,它说:它与你对 selenium 采取的行动无关——一旦你导航到该网站,你就会立即被检测到并被禁止。在这里导航没有问题。检测发生在页面上的第一次点击或数据输入时。
标签: selenium webdriver selenium-chromedriver google-chrome-headless