使用Python中的硒,单击网页上的“下一步”按钮
Posted
tags:
篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了使用Python中的硒,单击网页上的“下一步”按钮相关的知识,希望对你有一定的参考价值。
我有一个非常简单的网页,希望输入激活码后单击“下一步”按钮。但是我无法通过值/名称“ next”找到该元素。从inspect元素
<input type="submit" name="activationpage1:j_id_id18" value="Next >>" style="font-family:Arial,sans-serif;font-size:11px;text-align:center;" />
如何在python代码中单击名为[[Next>>
的按钮?
"activationpage1:j_id_id18"
,请使用driver.find_element_by_name("activationpage1:j_id_id18")
或者您也可以使用xpath
,例如
driver.find_element_by_xpath('//input[@name="activationpage1:j_id_id18"]') driver.find_element_by_xpath('//input[@value="Next >>"]') driver.find_element_by_xpath('//input[@type="submit"]') driver.find_element_by_xpath('//input[@style="font-family:Arial,sans-serif;font-size:11px;text-align:center;"]')
click()
的元素上的Next >>
,您必须为element_to_be_clickable()
引入WebDriverWait,并且可以使用以下任何一个Locator Strategies:
- 使用
CSS_SELECTOR
:WebDriverWait(driver, 20).until(EC.element_to_be_clickable((By.CSS_SELECTOR, "input[name^='activationpage'][value^='Next'][type='submit']"))).click()
XPATH
:WebDriverWait(driver, 20).until(EC.element_to_be_clickable((By.XPATH, "//input[starts-with(@name,'activationpage') and starts-with(@value,'Next')][@type='submit']"))).click()
注:您必须添加以下导入:
from selenium.webdriver.support.ui import WebDriverWait
from selenium.webdriver.common.by import By
from selenium.webdriver.support import expected_conditions as EC
以上是关于使用Python中的硒,单击网页上的“下一步”按钮的主要内容,如果未能解决你的问题,请参考以下文章
如何在python中使用selenium或scrapy单击“下一步”按钮
如何使用Java中的selenium从页数逐个单击“下一步”按钮