gpt4 book ai didi

python - 如何使用 selenium 和 Python 根据 HTML 单击网页上的元素

转载 作者:行者123 更新时间:2023-12-01 09:10:44 24 4
gpt4 key购买 nike

我已经尝试了一段时间,但似乎无法使用 python selenium 找到这个元素。我使用的所有方法,无论是使用 xpath、css 选择器还是类查找,都返回负值,所以有人知道如何查找并单击中间具有值“LOG IN”和类型“button”的元素吗?

<div id="62b00cbb-fb56-4b15-80bb-a8f965d02d90" class="nike-unite-submit-button loginSubmit nike-unite-component blurred">
<input id="019a8673-60aa-4b9f-825a-00b01ad36507" type="button" value="LOG IN"> # Click This
</div>

我似乎找不到它,因此感谢所有帮助,谢谢!

firefox_options = webdriver.FirefoxOptions()
driver = webdriver.Firefox(firefox_options=firefox_options)
driver.get('https://www.nike.com/launch/?cp=usns_aff_nike&s=upcoming')
time.sleep(.2)
logIn = driver.find_element_by_css_selector('#root > div > div > div.main- layout > div > header > div.d-sm-h.d-lg-b > section > ul > li.member-nav-item.d-sm-ib.va-sm-m > button')
logIn.click()
time.sleep(.2)
email = driver.find_element_by_name('emailAddress')
email.send_keys('email')
passWord = driver.find_element_by_name('password')
passWord.send_keys('password')

# Find and click element from above

其他一切都正常,只是当涉及到选择登录按钮时。这是代码,以防万一他们可能出了问题或者有人想检查一下,谢谢

最佳答案

要在文本为 LOG IN 的元素上调用 click(),您需要引发 WebDriverWait 以使 元素成为可点击,您可以使用以下任一解决方案:

  • css_selector:

    WebDriverWait(driver, 20).until(EC.element_to_be_clickable((By.CSS_SELECTOR, "div.nike-unite-submit-button.loginSubmit.nike-unite-component.blurred > input[value='LOG IN']"))).click()
  • xpath:

    WebDriverWait(driver, 20).until(EC.element_to_be_clickable((By.XPATH, "//div[@class='nike-unite-submit-button loginSubmit nike-unite-component blurred']/input[@value='LOG IN']"))).click()

关于python - 如何使用 selenium 和 Python 根据 HTML 单击网页上的元素,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/51666661/

24 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com