答えて

7

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

+0

doh!良いキャッチ! Locating Elementsセクションにリストされていたfind_element_by_xpath()という単一のWebElementオブジェクトが返されました。あなたが述べた複数の機能は実際には第6章「API」にあります。なぜ彼らがセクション4にもこれを含まなかったのか分かりません。ありがとう! – samxli

+0

ええ、少なくとも奇妙なセクション4で簡単に言及するのは意味がありますが、少なくともいくつかのドキュメントがあります! – Sam

+1

私はgithubで文書を編集し、うまくいけばそれは引っ張られます。 – samxli

1

Javaでは、次のように仕事ができる:
ウェイ1:

​​

ページ内の総リンクをカウントする

int xpathCount= driver.findElements(By.xpath("//div[@id='billingProfiles']/div[@class='cardContainer']")).size(); 

OR、

List<WebElement> xpath = driver.findElements(By.xpath("//div[@id='billingProfiles']/div[@class='cardContainer']")); 
int xpathCount = xpath.size(); 
System.out.println("Total xpath: " + xpathCount); 

ウェイ2:

int totalLinkSize2 = driver.findElements(By.xpath("//a")).size(); 
System.out.println("Total Links by Way2 : " + totalLinkSize2); 
+0

はこれがJavaでの最善の方法ですか? – rrw

+0

上記の方法の1つです。別の方法でもやり遂げることができます。リスト

+0

を使用することができます。これは私が今やっていることですが、intオブジェクトを返すメソッドのような別の方法がありますか? – rrw

0
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

あなたはセレンで利用できる 'assertXpathCount' コマンドを使用することができますあなたは、単にlen()機能を使用することはでき

3

:Pythonで

len(driver.find_elements_by_xpath('//a')) 
0

element.find_elements() 

はすべてのサーフェスの子を返します。

関連する問題