是否可以通过元素的部分值单击selenium中的onclick
元素?
页面上有多个输入项目,我只需要选择一个带有特定字符串的项目即可。
例如:
<input name="booksubmit" type="button" class="searchAvailBtnSelect" value="Select" onclick="setTimeout('disableSelect()',1);bookNowSubmit('0165','1BD','000000452014022703S000016500010708F ','101400','156000','3','02/27/2014','false','false','false','false','true','false','false','EXPRESS','63','1 Bedroom Deluxe','false','AC')">
<input name="booksubmit" type="button" class="searchAvailBtnSelect" value="Select" onclick="setTimeout('disableSelect()',1);bookNowSubmit('0165','2BD','000000452014022703S000016500010708F ','101400','156000','3','02/27/2014','false','false','false','false','true','false','false','EXPRESS','63','2 Bedroom Deluxe','false','AC')">
<input name="booksubmit" type="button" class="searchAvailBtnSelect" value="Select" onclick="setTimeout('disableSelect()',1);bookNowSubmit('0165','1BD','000000452014022703S000016500010708F ','101400','156000','3','02/27/2014','false','false','false','false','true','false','false','EXPRESS','63','1 Bedroom Presidential','false','AC')">
如果您注意到快要结束了,这里有“ 1卧室豪华房”,“ 2卧室豪华房”和“
1卧室总统房”。由于它是一个输入项目,因此没有可供我过滤的文本,但是我只需要选择一个特定的项目,例如2 Bedroom Deluxe。
我有什么可以做的:
buttons = driver.find_elements_by_name('booksubmit')
for button in buttons:
if button ........
还是其他?我目前正在使用beautifulsoup4来解析页面上的html并检索与该项目关联的文本,因此我不知道是否可以将其合并。从视觉上看,该页面是HTML表格,其格式为:
+--------------------------------------------------------------------+
| 1 Bedroom Deluxe | $25 | [button i don't care about] |
|------------------------+---------+---------------------------------|
| 2 Bedroom Deluxe | $50 | [button i'm trying to click] |
|------------------------+---------+---------------------------------|
| 1 Bedroom Presidential | $50 | [button i don't care about] |
+--------------------------------------------------------------------+
编辑:
我猜发布得太早了。紧接着,一个同事提出并建议通过Xpath通过以下方式找到元素:
driver.find_element_by_xpath('//input[contains(@onclick,"1 Bedroom Deluxe")]')
XPath或CssSelector都可以。无需任何循环,但定位器简单明了。
driver.find_element_by_xpath(".//input[contains(@onclick, '1 Bedroom Deluxe')]")
driver.find_element_by_css_selector("input[onclick*='1 Bedroom Deluxe']")
为了在JList中的项目旁边获得图标,我按照教程创建了一个基本类来存储我的JList项目。然后我使用这个类作为我的listmodel来打印每个项目的图标和文本。 Im还使用getListCellRendererComponent来打印文本和图标。 我的ListItem类如下所示: 例如元素1、元素2 我想看看所有的项目,并改变名称和图标…
问题内容: 在这种情况下,我需要使用Selenium api 查找并单击“ 关于” 链接,但无法执行此操作。 我所做的是 但它不起作用 问题答案: 以我的经验,Selenium API在这种方式上有很多缺陷。通常只能通过重新选择选择器来克服它们。例如,您可以尝试使用XPath选择器来获取元素: 另外,如果您尝试使用Internet Explorer,则可能不会单击该元素而是模拟按下Enter键来帮
问题内容: 这是我的代码。我想知道单击了哪个,然后在新框架中显示该ImageIcon。 e.getSource()无法正常工作… 问题答案: 如果将MouseListener直接添加到JLabel,则可以在JOptionPane中轻松显示按下的标签的图标: 例如:
要移至“电子产品”菜单: 要移动移动菜单: 要单击手机: 已尝试上述代码,但未工作显示错误消息: Xpath不存在
我正在使用Python和Selenium。我正在尝试自动化一个应用程序,在这个应用程序中,我需要从下拉菜单中提取最高值。这些值不断变化,因此我无法将静态xpath传递给selenium python代码。 我尝试了下面的代码,但都不起作用。 这个想法是找到所有的值并提取顶部的值。当我打印时,我什么也没看到。我通过检查下拉菜单提取了以下超文本标记语言。 现在这些值不断变化,因此我无法在xpath中传
点击一个元素后,如何使用selenium找到当前url?我有这个网站:http://www.runningintheusa.com/Classic/View.aspx?RaceID=5622 我有代码(假设所有相关的库都已导入) 我运行代码,它只返回原来的网址是http://www.runningintheusa.com/Classic/View.aspx?RaceID=5622 我怎么能找到的网