【发布时间】:2022-11-25 21:49:21
【问题描述】:
几周以来我一直在学习机器人框架,在用真实案例制作机器人时我遇到了下一个情况:
我有一个公司 ID 的值,有了它,我需要在网站上的手风琴内部找到带有该信息的按钮,手风琴按钮列表是完全可变的,可以有一个或多个项目
对于上下文,网站的一部分是这样的:
<div class="accordion ui fluid"><div class="item" style="background-color: white; margin: 1rem 0px; border-radius: 10px;"><div class="title accordion-title"><i aria-hidden="true" class="dropdown icon"></i>Accordion 1</div><div class="content" style="padding: 1rem; background-color: rgb(238, 238, 238);"><div class="persona-btns"><div><button class="ui primary button">Accordion1 op1</button><button class="ui primary button">Accordion1 op2</button></div></div></div></div><div class="item" style="background-color: white; margin: 1rem 0px; border-radius: 10px;"><div class="active title accordion-title"><i aria-hidden="true" class="dropdown icon"></i>Accordion2</div><div class="content active" style="padding: 1rem; background-color: rgb(238, 238, 238);"><div><button class="ui basic button" style="padding: 0px; box-shadow: 0px 0px 0px 0px; margin: 0px; text-align: inherit;">*id number of a company* *variable text(name of a company)*</button></div></div></div></div>
我试过
Click Button //button[.//text()=*id value*]
但在那种情况下,没有找到任何东西,只是出现了一个错误
另一个选项是使用带有按钮容器的 Get WebElements 关键字,它列出了网络元素,但没有直接的方法使其与文本值匹配:
[<selenium.webdriver.remote.webelement.WebElement (session="3932a0dd61c3018f5ede7ca31ea475b1", element="59b4ad4d-3410-4e95-b1e5-3d02e07d1894")>]
所以我需要找到一种方法让框架识别带有文本的元素,或者在 WebElements 选项中,获取 html 的文本并获取数据以使其可以使用 Click Button 关键字点击
【问题讨论】:
标签: selenium xpath robotframework