Heim > Fragen und Antworten > Hauptteil
Ich versuche also, ein Eingabeelement von Twitter abzurufen, aber wenn ich es ausführe, erhalte ich im Node-Terminal immer wieder eine Fehlermeldung wie diese und als Folge davon schließt sich das durch diesen Code erstellte Browserfenster selbst, da dies nicht möglich ist Korrekte Eingabeauswahl gefunden. Wie erhalte ich die richtige Eingabeart?
错误:找不到选择器的元素:input[name="text"]
const puppeteer = require('puppeteer'); (async () => { const browser = await puppeteer.launch({ headless: false, }) const page = await browser.newPage(); page.setViewport({ width: 1280, height: 800, isMobile: false }) await page.goto("https://twitter.com/i/flow/login"); await page.type('input[name="text"]', 'username', {delay: 25}) })();
Ich habe verschiedene Selektoren ausprobiert, einschließlich des Attributs class
, erhalte aber immer noch den Fehler
P粉7041966972024-04-07 11:23:31
您需要在输入之前waitForSelector出现在页面上。这就是为什么你会收到错误,它找不到该元素。
await page.waitForSelector('input[name="text"]'); await page.type('input[name="text"]', 'username', {delay: 25})