如果没有“ theme-cell-card Ace”,我必须获取元素的文本和链接。以下是示例html代码:
<div class="theme-grid-cell-frame">
<a href="/t/490">
<div class="theme-cell">
<div class="image"></div>
<div class="theme-cell-overlay deep"></div>
<h1 class="theme-cell-name"> textqwqw</h1>
<div class="theme-cell-card Ace"></div>
</div>
</a>
</div>
<div class="theme-grid-cell-frame">
<a href="/o/434">
<div class="theme-cell">
<div class="image"></div>
<div class="theme-cell-overlay deep"></div>
<h1 class="theme-cell-name"> textegg</h1>
<div class="theme-cell-card Jack"></div>
</div>
</a>
</div>
<div class="theme-grid-cell-frame">
<a href="/t/4665">
<div class="theme-cell">
<div class="image"></div>
<div class="theme-cell-overlay deep"></div>
<h1 class="theme-cell-name"> textdgfh</h1>
<div class="theme-cell-card Ace"></div>
</div>
</a>
</div>
<div class="theme-grid-cell-frame">
<a href="/o/764">
<div class="theme-cell">
<div class="image"></div>
<div class="theme-cell-overlay deep"></div>
<h1 class="theme-cell-name"> textgrth</h1>
</div>
</a>
</div>
我能够获取元素的文本,但我想通过条件class="theme-cell-card Ace"
为真。
${grid} Set Variable //div[@class='theme-cell']
@{elements} Get Webelements ${grid}
:FOR ${element} IN @{elements}
\ ${text} Get Text ${element}
我是新手,所以如果您需要更多信息,请告诉我。谢谢
答案 0 :(得分:0)
@{elements} Get Webelements //a[.//div[@class='theme-cell-card Ace']]
:FOR ${element} IN @{elements}
\ ${text} Get Text ${element}
\ ${link} SeleniumLibrary.Get Element Attribute ${element} attribute=href
\ Log to console ${text}
\ Log to console ${link}
答案 1 :(得分:-1)
我不知道机器人框架,但这是您想要的XPath定位器
//a[.//div[@class='theme-cell-card Ace']]
这将使您获得A
标记,其中包含具有所需类的DIV
。您可以从该元素中获取href
以及包含的文本。
由于您的问题被标记为python,因此您可以使用类似
的简单内容aces = driver.find_elements_by_xpath("//a[.//div[@class='theme-cell-card Ace']]")
for ace in aces
print(ace.get_attribute("href"))
print(ace.text)