私は巨大なDOMツリーを見ています。 NodeJS/Seleniumを使用すると、特にaタグのタイトルで検索する必要があり、関連するhrefをクリックする必要があります。私は正規表現にはとても新しいので、すでに多くのエラーが発生しています。InvalidSelectorErrorは、私のxpathセレクタを定義する助けが必要です
By.xpath(//ul/class='slds-grid'//a[title="${uniqueStringToMatch}"]).click()
InvalidSelectorError: invalid selector: Unable to locate an element with the xpath expression //ul/class='slds-grid slds-grid--pull-padded slds-wrap list'//a[text()="Load Client Referrals"] because of the following error: SyntaxError: Failed to execute 'evaluate' on 'Document': Type conversion failed while evaluating the expression.
以下のツリーが、私はそれが重要だとは思わないよう、上にあるすべての階層を抜けて取得するが、正しい:ここ
は私の最高のこれまでの試みであります私が間違っているなら私。ツリー内の最初の一意のクラス名から...
<ul class='slds-grid'>
<li class='slds-col'>
<a class="app_launcher" href="thelinkIwantToclick" title="uniqueStringToMatch"
<span class="label-ctr">
</a>
</li>
<li class='slds-col'>
<a class="app_launcher" href="thelinkIwantToclick" title="uniqueStringToMatch"
<span class="label-ctr">
</a>
</li>
<li class='slds-col'>
<a class="app_launcher" href="thelinkIwantToclick" title="uniqueStringToMatch"
<span class="label-ctr">
</a>
</li>
</ul>
li内のすべてのタイトルは一意です。
私はW3の学校を使って学習していますが、時間が無駄です。
(私は自分でXPathを書くための最も簡単な方法を探してもよ - ツールやチュートリアルをはるかに高く評価されるだろう!)
@マークは、今、私はこれを使用しています//:// UL [@クラス= "slds- NoSuchElementError:そのような要素がありません:要素を見つけることができません:{"method": "xpath"、 "selector": "// ul [これはChrome Xpathヘルパープラグインで完璧なxpathであることを確認しました – AutomationEngineer3001