我在网页中有一个“onclick”元素,其HTML内容如下:
<a href="#" onclick="fastener('3625')">Fastener</a>
我想使用Python + Selenium使用字符串“fastener”或“Fastener”搜索此元素。数字“3625”将根据先前的输入而改变,因此无法搜索。
我尝试了以下方法,但徒劳无功:
br.find_element_by_css_selector("a[@onlick*='fastener']").click()
请建议如何做到这一点。谢谢!
P.S。:我正在使用Python 2.7,Chrome WebDriver和Chrome v62。
答案 0 :(得分:1)
使用以下代码:
br.find_element_by_link_text("Fastener").click()
希望它可以帮到你!
答案 1 :(得分:1)
使用capybara-py:
page.click_link("Fastener")
Capybara旨在提供这个和许多其他类似的辅助方法,例如,可能需要从最终用户的角度编写验收测试:
page.fill_in("Street", value="123 Main St")
page.select("United States", field="Country")
page.choose("Expedited shipping")
page.click_button("Place order")
答案 2 :(得分:0)
要将文字搜索为紧固件,您可以使用以下任一选项:
通过紧固件:
br.find_element_by_link_text("Fastener").click()
通过紧急(xpath) onclick :
br.find_element_by_xpath("//a[contains(@onclick,'fastener')]").click()
通过紧急(css_selector) onclick :
br.find_element_by_css_selector("a[onclick^='fastener']").click()
答案 3 :(得分:0)
使用包含搜索元素
//a[contains (@onclick='fastener')]
OR
//a[contains(text(),"Fastener")]