Webdriver 不会点击第二个 link

Webdriver wont click on a second link

我想使用 selenium 制作一个机器人,但我的机器人无法访问网站的不同部分。在我的代码中,我的驱动程序成功转到 nike.com (1), then successfully clicks and loads a different link within Nike (clicks circled area in (1) and goes to (2)). Then, my problems begin here, I try to click and load a different link (2) but my driver does nothing. I know my driver found the second link because if I print out 'second.text' then I get the correct text (3)...

我对 selenium 还是个新手,我几乎不知道自己在做什么。任何帮助都会有所帮助。 谢谢。

    from selenium import webdriver
    from selenium.webdriver.common.by import By
    from selenium.webdriver.chrome.options import Options
    from selenium.webdriver.chrome.service import Service
    from webdriver_manager.chrome import ChromeDriverManager
    
    if __name__ == '__main__':
        options = Options()
        options.add_argument("start-maximized")
        driver = webdriver.Chrome(service=Service(ChromeDriverManager().install()), options=options)

        driver.get("https://www.nike.com/men")

        driver.implicitly_wait(5)
        first = driver.find_element(by=By.CLASS_NAME, value="prl3-sm")
        first.click()

        driver.implicitly_wait(5)
        second = driver.find_element(by=By.CSS_SELECTOR, value='a[class="JSftBPEZ"]')
        #print(second.text)
        second.click()

我已经测试过了。 通过Javascript点击它被点击。

这是点击第二个 link 的代码。

second = driver.find_element(by=By.CSS_SELECTOR, value='a[class="JSftBPEZ"]')
driver.execute_script("arguments[0].click();",second)

顺便说一句,您可能需要正确定义 xpath。例如第二个 link 指向 6 个元素。但无论如何通过Javascript点击它会点击第一个选项