Python 我创建了一个代码来完美地完成人类基准测试。为什么会失败?

Python 我创建了一个代码来完美地完成人类基准测试。为什么会失败?,python,selenium,selenium-webdriver,Python,Selenium,Selenium Webdriver,以下是我为在本网站上获得满分而编写的代码: 由于某种原因,每次我运行它都会失败,我不知道为什么 from selenium import webdriver import time driver = webdriver.Chrome("D:\\user\\Downloads\\chromedriver_win32\\chromedriver.exe") driver.get("https://humanbenchmark.com/tests/verbal-me

以下是我为在本网站上获得满分而编写的代码:

由于某种原因,每次我运行它都会失败,我不知道为什么

from selenium import webdriver
import time

driver = webdriver.Chrome("D:\\user\\Downloads\\chromedriver_win32\\chromedriver.exe")

driver.get("https://humanbenchmark.com/tests/verbal-memory")

word_list = []

time.sleep(2)

start_button = driver.find_element_by_xpath("/html/body/div/div/div[4]/div[1]/div/div/div/div[4]/button")
start_button.click()

def click_new():
    new_button = driver.find_element_by_xpath("/html/body/div/div/div[4]/div[1]/div/div/div/div[3]/button[2]")
    new_button.click()

def click_seen():
    seen_button = driver.find_element_by_xpath("/html/body/div/div/div[4]/div[1]/div/div/div/div[3]/button[1]")
    seen_button.click()

while True:
    current_word = driver.find_element_by_class_name("word")
    if current_word.text in word_list:
        click_seen()
    else:
        click_new()
    word_list.append(current_word.text)
    time.sleep(2)

单击按钮之前,我会将单词添加到列表中:

while True:
    current_word = driver.find_element_by_class_name("word")
    if current_word.text in word_list:
        click_seen()
    else:
        word_list.append(current_word.text)
        click_new()
    time.sleep(2)
看起来,当前的单词实际上是在你点击按钮的那一刻更新的,然后它已经是添加到列表中的新词了。这一个你会认为已经看到了,所以它总是选择
单击\u seen()


我让它运行了一段时间,但我把打破记录和篡改统计数据的荣誉留给了你:-DDD。

到底什么失败了?剧本?考试?失败的同时还有一条消息吗?它以一个糟糕的分数通过了测试我是新来的selenium,现在23:20太累了,无法解决webdriver的问题,但是a)您是否尝试在获得
当前单词后打印
文本?这是你所期望的吗?b) 您可以缩进
word\u列表。追加(…)
以防止重复项。@Dr.V a)打印当前的\u word.text字符串将精确打印它应该打印的内容-屏幕上的单词。b) 会的,伙计,谢谢你的建议。非常感谢你的传奇。真正的技术天才。