Python 硒饼干点击机器人

Python 硒饼干点击机器人,python,python-3.x,selenium-webdriver,Python,Python 3.x,Selenium Webdriver,我正在用python(使用Selenium)编写一个脚本,当您运行它时,它会打开一个浏览器,转到并开始单击。这一部分很好,但我尝试实现一个功能,当你有足够的cookies时,bot会自动购买升级,如果你没有,它会打印出“你没有足够的cookies!”但出于某种原因,即使我有足够的cookies,脚本也会打印出来。有人看到问题了吗 from selenium import webdriver from selenium.common.exceptions import NoSuchElementE

我正在用python(使用Selenium)编写一个脚本,当您运行它时,它会打开一个浏览器,转到并开始单击。这一部分很好,但我尝试实现一个功能,当你有足够的cookies时,bot会自动购买升级,如果你没有,它会打印出“你没有足够的cookies!”但出于某种原因,即使我有足够的cookies,脚本也会打印出来。有人看到问题了吗

from selenium import webdriver
from selenium.common.exceptions import NoSuchElementException
browser = webdriver.Firefox()
browser.get('http://orteil.dashnet.org/cookieclicker/')
cookie = browser.find_element_by_id('bigCookie')
while True:
      cookie.click()
      try:
            product = browser.find_element_by_class_name('product unlocked enabled')
            product.click()
      except NoSuchElementException:
            print('You don't have enough cookies to buy that!')
            continue

这是因为按类名称查找元素将名称转换为css选择器。 因此,如果您的名称为“product unlocked enabled”,则选择器将为“.product unlocked enabled”。但这种情况下正确的css选择器是 “.product.unlocked.enabled”,因为此元素有多个类名,由3个类名组成:“product”、“enabled”、“unlocked”。
您应该使用“product.unlocked.enabled”或例如“unlocked.enabled”这样的名称,这也是正确的,因为此元素仍然有类“unlocked”和“enabled”。

问题可能出在
浏览器上。按类名称查找元素(“product unlocked enabled”)
。尝试通过链接文本或xpath查找,或者将“类名”更改为类似于
product.unlocked.enabled
。起初我也这么认为,但当您有足够的cookie进行升级时,其类名将更改为“product unlocked enabled”因此,我或多或少地确定这不是问题所在,因为我经常摆弄它……我的Firefox只为
光标显示class
product unlocked enabled
,为其他产品显示class
product unlocked disabled
,但我可以单击它们。