我正在尝试编写一个Python脚本,该脚本使用多个帐户登录到Kahoot。我遇到了以下问题:我试图用Selenium定位“输入”按钮,然后单击它。但是我得到了以下信息:selenium.common.exceptions.NoSuchElementException: Message: no such element: Unable to locate element: {"method":"css selector","selector":".enter-button__EnterButton-sc-1o9b9va-0 gSoXKU"} (Session info: chrome=83.0.4103.116)
我不知道为什么它不起作用。这是我的代码:
from selenium import webdriver
class kahoot_tab:
def __init__(self):
self.driver = webdriver.Chrome(r'C:\Users\...\chromedriver.exe')
self.driver.get('https://kahoot.it/')
def enter_pin(self, pin):
self.driver.find_element_by_name('gameId').send_keys(pin)
self.driver.find_element_by_class_name('enter-button__EnterButton-sc-1o9b9va-0 gSoXKU').click()
tab1 = kahoot_tab()
tab1.enter_pin('123456')
让我感到沮丧的是,此元素存在,因为这是HTML代码: <button type="submit" value="Submit" class="enter-button__EnterButton-sc-1o9b9va-0 gSoXKU" data-functional-selector="join-game-pin"><span>Enter</span></button>
请帮我!
PS:我也尝试过time.sleep(100)
在发送图钉和单击按钮之间进行操作。
您的目标元素具有多个类名。
即enter-button__EnterButton-sc-1o9b9va-0
和gSoXKU
您无法使用.find_element_by_class_name
,因为此方法仅用于单个类名。
相反,对于多个类名,可以使用.find_element_by_css_selector
以下值.enter-button__EnterButton-sc-1o9b9va-0.gSoXKU
:
self.driver.find_element_by_css_selector('.enter-button__EnterButton-sc-1o9b9va-0.gSoXKU').click()
本文收集自互联网,转载请注明来源。
如有侵权,请联系 [email protected] 删除。
我来说两句