[英]How do you find a Certain Text on a Website using Python Selenium?
[英]Find element with certain text using Selenium with Python
目前,我正在使用它,它的工作原理。
self.browser.find_element_by_xpath('//a/h4[text()="item I want"]').click()
是否有更好的方式来选择文字? 我觉得代码可读性极大地使用了xpath。
简单的HTML示例,可以是任意数量的元素。 目的是测试添加到数据库中的特定葡萄酒以进行功能测试。
{% extends 'wine/base.html' %}
{% block content %}
<section id="wine_content">
<div class="cards">
{% for wine in wines %}
<div class="card">
<a href="/wine/{{ wine.id }}">
<h4>{{ wine.name }}</h4>
<p>{{ wine.vintage }}</p>
<p>{{ wine.description}}</p>
</a>
</div>
{% endfor %}
</div>
</section>
{% endblock %}
如果要提高代码可读性,应该看到遵循页面对象模式。
第一步是在具有显式名称的变量中定义定位器:
from selenium.webdriver.common.by import By
item_wine_pinot_noir = (By.XPATH, "//a/h4[text()='%s']" % "Pinneau noir")
browser.find_element(*item_wine_pinot_noir).click()
你可以尝试这个
self.browser.find_element_by_link_text('item I want').click()
声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.