如何使用Python中的Selenium WebDriver获取找到的元素数量?
我查看了位于 这里 的文档,但没有找到答案。
我想通过 class name
或 xpath
来获取一个元素,并返回这个元素的数量。看起来在Python中没有可用的函数,比如 get_xpath_count()
。
有没有什么想法可以实现这个?
7 个回答
3
在Java中,下面的代码可以用:
int xpathCount= driver.findElements(By.xpath("//div[@id='billingProfiles']/div[@class='cardContainer']")).size();
或者,
List<WebElement> xpath = driver.findElements(By.xpath("//div[@id='billingProfiles']/div[@class='cardContainer']"));
int xpathCount = xpath.size();
System.out.println("Total xpath: " + xpathCount);
如果你想计算一个页面中的所有链接数量:
方法1:
List<WebElement> totalLinks = driver.findElements(By.tagName("a"));
int totalLinkSize = totalLinks.size();
System.out.println("Total Links by Way1 : " + totalLinkSize);
方法2:
int totalLinkSize2 = driver.findElements(By.xpath("//a")).size();
System.out.println("Total Links by Way2 : " + totalLinkSize2);
10
你可以简单地使用 len()
这个函数:
len(driver.find_elements_by_xpath('//a'))
12
试试用 driver.find_elements_by_xpath
这个方法,然后数一下返回的元素有多少个。