2016-05-19 4 views
-1

のXPathを見つけます。私はxpath式html/body/div[5]/div[3]/div/div/div/div[2]/div/table/tbody/tr[2]/td/spanを使用していますが、「これは私が得ているものです」というテキストの要素を取得しています。要素のロケータを変更して目的のテキストを取得するのを手伝ってください。は、私は「これは私が得るべきものである」テキストを含む要素のXPathを取得したい次のスニペット</p> <p><a href="https://i.stack.imgur.com/FVChq.jpg" rel="nofollow noreferrer"><img src="https://i.stack.imgur.com/FVChq.jpg" alt="HTML Snippet"></a></p> <p>で要素

答えて

1

詳細な情報がない場合は、既存のXPathに基づいて提案することができます。あなたがしたい場合

..../table/tbody/tr[2]/td/text()[normalize-space()] 
+0

上記のxpathを使用して、SeleniumとJavaを使用したテストシナリオを自動化すると、例外org.openqa.selenium.InvalidSelectorExceptionが発生します。ロケータは[オブジェクトテキスト]です。要素@vxsx – stackoverflow

+1

@curious大丈夫です。要素ノード以外を返すことをサポートしていないため、SeleniumにはクリーンなXPathソリューションはありません。 '​​'要素を返す必要があります。その後、いくつかの文字列操作を行います:http://stackoverflow.com/questions/36018524/selenium-get-a-text-node-using-xpath-and-use-it -as-a-string-in-java – har07

0

..../table/tbody/tr[2]/td/span/following-sibling::text()[1] 

または親td要素からの直接の子テキストノードとして:だから、目的のテキストノードは、いずれかの以前に選択span要素を次のテキストノードとして識別することができますテキストノードを取得するには、XPathは次のようになります。

html/body/div[5]/div[3]/div/div/div/div[2]/div/table/tbody/tr[2]/td/text()[2] 

XPath式は、おそらくそれほど冗長べきです。

関連する問題

 関連する問題