我正在尝试使用Selenium WebDriver获取文本,这是我的代码。请注意,我不想使用XPath,因为在我的例子中,ID在每次重新启动网页时都会更改。
我的代码:
text = driver.find_element_by_class_name("current-stage").getText("my text")
于飞:
<span class="current-text" id="yui_3_7_0_4_1389185744113_384">my text</span>
我该如何解决这个问题?
8条答案
按热度按时间hc8w905p1#
你只要
.text
。然后你可以在你得到它之后验证它,不要试图传递你所期望的。
4dbbbstv2#
"巨蟒"
** java **
C语言#
Ruby
hzbexzde3#
若要打印文字 *
my text
*,您可以使用下列其中一种“定位器策略”:get_attribute("textContent")
:get_attribute("innerHTML")
:理想情况下,您需要诱导WebDriverWait等待
visibility_of_element_located()
,并且可以使用以下定位器策略之一:get_attribute("textContent")
:get_attribute("innerHTML")
:*注意:必须添加以下导入:
您可以在如何使用Selenium-Python检索WebElement的文本中找到相关讨论
参考
有用文档的链接:
text
属性返回The text of the element.
5tmbdcev4#
答案是:
dhxwm5r45#
您可以用途:
这将返回元素中的文本,并允许您在此之后对其进行验证。
dsekswqp6#
这是正确的答案。它成功了!!
bwitn5fc7#
提醒在Selenium 4更新后发现此线程的任何人。driver.find_element_by_* 已被弃用,使用它将给予“弃用警告”。替换方法是:驱动程序.find_element(By.X,“名称”)请查找Selenium 4信息。
bn31dyow8#
我发现当无法在自定义类中获取内容或更改id时,这绝对是无价的: