Selenium 硒动态值

Selenium 硒动态值,selenium,Selenium,如何使用selenium脚本捕获按钮的动态值?如果要在动态生成的页面上查找元素,可以使用XPath或CSS选择器查找该元素。选择器需要足够通用,以捕获动态元素的所有可能性,同时足够具体,以不匹配页面上的另一个元素。如果可能的话,这通常通过为按钮分配一个ID来实现 如果您指的是使用Selenium检查按钮的内容/属性,那么应该相当简单。一旦有了正确的选择器,就应该能够访问内部HTML(或者您想要的关于该元素的任何其他信息) 您可以使用selenium getText和getValue从按钮中提取文

如何使用selenium脚本捕获按钮的动态值?

如果要在动态生成的页面上查找元素,可以使用XPath或CSS选择器查找该元素。选择器需要足够通用,以捕获动态元素的所有可能性,同时足够具体,以不匹配页面上的另一个元素。如果可能的话,这通常通过为按钮分配一个ID来实现


如果您指的是使用Selenium检查按钮的内容/属性,那么应该相当简单。一旦有了正确的选择器,就应该能够访问内部HTML(或者您想要的关于该元素的任何其他信息)

您可以使用selenium getText和getValue从按钮中提取文本。如果只有按钮文本是动态的,而按钮本身是静态的,那么也可以很容易地获取其位置/UI定位器来捕获动态值。我使用的最佳方法是“xpath”。 这背后的原因是,无论何时,当您要查找动态元素时,您都需要找到该元素到该元素的父html路径

例如:

假设我们有一个html源,如:

 <div class="sfibbbc">
        <div id="sbtc" class="sbtc">
            <div class="sbibtd">
                <div id="sfdiv" class="sbibod ">
                    <div class="gstl_0 sbib_a" style="height: 38px;">
                        <div id="gs_st0" class="gsst_b sbib_c" style="line-height: 38px;" dir="ltr">
                            <a class="gsst_a" href="javascript:void(0)" aria-label="Search by image">
                                <span id="gs_si0">
                                    <span id="qbi" class="gsst_e"></span>
                                    </span>
                            </a>
                        </div>

如果我们需要找出{span id=“qbi”class=“gsst_e”/span},请在下面的代码中找到 id是动态的,这意味着无论何时登录到该页面,它都会发生更改

要实现这一点,我们需要派生类似xpath的->

//div[@id='gs\u st0']//a//span//span[@class='gsst\u e']


因此,如果每次它将生成一个新ID,那么WebDriver也可以通过其父路径找到元素。

您能提供更多信息吗?HTML的一个示例对于您想要检索的内容的详细信息非常有用。