无法在Python中选择带有selenium的单选按钮

2024-09-28 21:09:26 发布

您现在位置:Python中文网/ 问答频道 /正文

我正在尝试使用pythonselenium从thisurl中选择房间数字段。在

我目前的代码是:

inputBHK = driver.find_element_by_id("No_of_Rooms_newpap")
input1BHK = driver.find_element_by_id("No_of_Rooms1")
ActionChains(driver).click(inputBHK).click(input1BHK).perform()

除了通常的导入和初始化。 引发的异常是:

^{pr2}$

有什么办法吗?在


Tags: ofno代码idbydriver数字element
2条回答

使用XPATH定位器查找并单击所需单选按钮,如下所示:

 input1BHK = driver.find_element_by_xpath("//*[@id='No_of_Rooms_l4Attr_RadioBox_div']//span[contains(text(),'1 BHK')]")
 input1BHK.click()

它将选择第一个选项“1bhk”,您可以更新XPATH以选择任何其他必需的选项。在

试着在两次点击事件之间等待,这个网站的实现看起来既棘手又缓慢 http://docs.seleniumhq.org/docs/04_webdriver_advanced.jsp

编辑: 好吧,我发现了一些问题,比如在这个网站上,他们使用隐藏的单选按钮,所以我们不点击它,而是点击包含单选按钮的标签(它也适用于包含文本的span元素,如果你喜欢按text()选择的话)

from selenium import webdriver

URL = 'http://kolkata.quikr.com/post-classifieds-ads/?postadcategoryid=971'

driver = webdriver.Firefox()
driver.get(URL)

inputBHK = driver.find_element_by_id("No_of_Rooms_newpap")
inputBHK.click()

container = driver.find_element_by_id("No_of_Rooms_l4Attr_RadioBox_div")
input1BHK = container.find_element_by_xpath(".//label[1]")
input1BHK.click()

相关问题 更多 >