Puppeteer はテキストの内容に基づいて要素をクリックできますか?

DDD
リリース: 2024-11-01 01:49:02
オリジナル
588 人が閲覧しました

 Can Puppeteer Click Elements Based on Their Text Content?

Puppeteer でテキストを含む要素をクリックする

質問:
Puppeteer は、テキスト コンテンツに基づいて要素をクリックできます。一意の識別子はありませんか?

短い答え:
はい、XPath 式を使用して特定のテキストを含む要素をクリックできます。

説明:
XPath は、テキスト コンテンツを含むさまざまな基準に基づいて要素をクエリする方法を提供します。 Puppeteer での使用方法は次のとおりです。

<code class="js">const [button] = await page.$x("//button[contains(., 'Button text')]");
if (button) {
    await button.click();
}</code>
ログイン後にコピー

この式は、「ボタン テキスト」というテキストを含むページ内の最初のボタン要素を選択します。

また、ボタンがクラス「elements」の要素を使用するには、XPath 式に以下を追加します。

<code class="js">const [button] = await page.$x("//div[@class='elements']/button[contains(., 'Button text')]");</code>
ログイン後にコピー

Why not text()?

  • Using contains(text( ), 'Text') は、テキストが子ノードにある場合など、特定のシナリオでは予期した結果を返さない場合があります。
  • contains(., 'Text') を使用すると、子ノードを含む要素のコンテンツ全体が検査されます。 、より正確な結果が得られます。

以上がPuppeteer はテキストの内容に基づいて要素をクリックできますか?の詳細内容です。詳細については、PHP 中国語 Web サイトの他の関連記事を参照してください。

ソース:php.cn
このウェブサイトの声明
この記事の内容はネチズンが自主的に寄稿したものであり、著作権は原著者に帰属します。このサイトは、それに相当する法的責任を負いません。盗作または侵害の疑いのあるコンテンツを見つけた場合は、admin@php.cn までご連絡ください。
人気のチュートリアル
詳細>
最新のダウンロード
詳細>
ウェブエフェクト
公式サイト
サイト素材
フロントエンドテンプレート