gpt4 book ai didi

C# Selenium XPATH 动态按钮选择基于 Span 中的文本

转载 作者:行者123 更新时间:2023-11-30 22:58:34 35 4
gpt4 key购买 nike

我正在尝试选择一个根据跨度中的人名动态创建的按钮,但我在使 XPATH 语法正确时遇到了问题。页面上会动态创建几个这样的按钮,因此我需要使用的标识符是客户名称。这是按钮的 HTML。

<button id="172369678903-announce" name="172369678903" data-selected-address-id="172369678903" data-unit-ids="[&quot;miq://document:1.0/Contract/a:1.0/Unit:1.0/dc290763-6cce-46c5-a878-3b5b0e615740#35176ee2-51c5-479b-b63e-a2cc958a2de9&quot;]" data-url="/spr/returns/addressSelection/dc290763-6cce-46c5-a878-3b5b0e615740" class="a-button-text selected-address" type="button">
<div class="a-column a-span12">
<div class="a-row">
<div class="a-section a-spacing-none a-text-left">
<span class="a-text-bold">
John Doe
</span>
</div>
</div>
<div class="a-row">
<div class="a-section a-spacing-none a-text-left">
<span>
20410 SOME STREET, WALNUT, CA, 91789-2435
</span>
</div>
</div>
<div class="a-row">
<div class="a-section a-spacing-none a-text-left">
<span>
Phone number: 2813308004
</span>
</div>
</div>
</div>
</button>

我有 John Doe 的信息,这就是我需要能够单击该项目的方式。这是我目前拥有的 XPATH 语法,但我已经尝试过它的许多不同形式。变量 shipName 中包含姓名 John Doe。

var addyFinder = driver.FindElement(By.XPath("//button/span[contains(text(),'" + shipName.Trim() + "')]"));

最佳答案

尝试在 XPath 下选择所需的 button 节点:

"//button[normalize-space(.//span)='" + shipName.Trim() + "']"

关于C# Selenium XPATH 动态按钮选择基于 Span 中的文本,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/52937754/

35 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com