web-dev-qa-db-ja.com

PythonでSeleniumWebDriverを使用して見つかった要素の数を取得するにはどうすればよいですか?

ここ にあるドキュメントを見ましたが、答えが見つかりませんでした。

_class name_またはxpathで要素を取得し、インスタンスの数を返したい。 Pythonには、get_xpath_count()などの使用可能な関数がないようです。

これを達成する方法についてのアイデアはありますか?

5
samxli

Driver.find_elements_by_xpathを試して、返された要素の数を数えます。

8
Sam

len()関数を使用するだけです。

len(driver.find_elements_by_xpath('//a'))
4
Nima Soroush

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);

ページ内のリンクの総数をカウントするには:
Way1:

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);
2
Ripon Al Wasim

Pythonで

element.find_elements()

すべてのサーフェスの子Web要素を返します

0
Peter Graham

Seleniumで使用可能な「assertXpathCount」コマンドを使用できます

0
vlad
public static IWebDriver driver = null;

public static IList<IWebElement> elements;

// List count return total number of element

elements = driver.FindElements(By.XPath("//a"));

int intLinkCount = elements.Count;
0
Pravesh