Heim >Web-Frontend >js-Tutorial >Kann Puppeteer Elemente basierend auf ihrem Textinhalt anklicken?
Frage:
Kann Puppeteer auf Elemente basierend auf ihrem Textinhalt klicken, auch wenn dies der Fall ist? Keine eindeutige Kennung?
Kurze Antwort:
Ja, Sie können mit XPath-Ausdrücken auf Elemente klicken, die bestimmten Text enthalten.
Erklärung:
XPath bietet eine Möglichkeit, Elemente basierend auf verschiedenen Kriterien, einschließlich ihres Textinhalts, abzufragen. So verwenden Sie es in Puppeteer:
<code class="js">const [button] = await page.$x("//button[contains(., 'Button text')]"); if (button) { await button.click(); }</code>
Dieser Ausdruck wählt das erste Schaltflächenelement auf der Seite aus, das den Text „Schaltflächentext“ enthält.
Um auch sicherzustellen, dass sich die Schaltfläche innerhalb des befindet Element mit der Klasse „elements“ hinzufügen, fügen Sie dem XPath-Ausdruck Folgendes hinzu:
<code class="js">const [button] = await page.$x("//div[@class='elements']/button[contains(., 'Button text')]");</code>
Warum nicht text()?
Das obige ist der detaillierte Inhalt vonKann Puppeteer Elemente basierend auf ihrem Textinhalt anklicken?. Für weitere Informationen folgen Sie bitte anderen verwandten Artikeln auf der PHP chinesischen Website!