Erraten Sie, was? Microsoft hat gerade wie am Schnürchen eine neue Version vonPlaywright veröffentlicht! Mit Fehlerbehebungen und API-Änderungen auf dem Laufenden zu bleiben, kann sich wie ein Vollzeitjob anfühlen, und das Verpassen cooler Funktionen ist ein Kinderspiel. Aber keine Sorge; Wir sind für Sie da!
Begleiten Sie uns auf einer Reise durch die neuesten Playwright-Updates. Wir sind hier, um Ihnen dabei zu helfen, auf dem Laufenden zu bleiben, neue Tricks zu erlernen und Ihre Kollegen mit Ihren herausragenden Fähigkeiten zu begeistern! Bereit zum Eintauchen? Lass uns gehen!
Wenn Sie einen Blick aus erster Hand auf die neuesten Playwright-Updates anhand einiger toller Beispiele werfen möchten, besuchen Sie den YouTube-Kanal von Playwright und schauen Sie sich das monatliche Video „Was gibt es Neues bei Playwright“ an:
Es ist Zeit, die neuesten Funktionen von Playwright zu erkunden und herauszufinden, wie Sie sie optimal nutzen können 🔍
FirefoxUserPrefs
wurde zum options
von browserType.launchPersistentContext(userDataDir, options)
hinzugefügt. Diese Methode startet einen Browser mithilfe des persistenten Speichers unter userDataDir
und gibt die Browser-Kontextinstanz zurück. firefoxUserPrefs
“ ist ein Objekt, das die Firefox-Benutzereinstellungen enthält, wie unter about:config
angegeben.reason
wurde dem options
der Methoden page.close(options)
, browserContext.close(options)
und browser.close(options)
hinzugefügt. reason
ist eine Zeichenfolge, die die Fehlermeldung enthält, die von allen Vorgängen gemeldet wird, die infolge eines close()
Aufrufs unterbrochen wurden.
Während firefoxUserPrefs
speziell auf Firefox-Benutzer zugeschnitten ist, die benutzerdefinierte Konfigurationen benötigen, ist das Feld „ reason
viel allgemeinerer Natur. Verwenden Sie es wie im folgenden Snippet:
await browser.close({ reason: "Scraping process completed!" })
Alle ausstehenden Vorgänge, die durch browser.close()
unterbrochen werden, lösen nun einen JavaScript-Fehler mit der Meldung „Scraping-Prozess abgeschlossen!“ aus.
Wie verwende ich diese Funktion? Stellen Sie sich vor, Ihre Zielseite befindet sich mitten in einer kritischen Aufgabe – sagen wir, sie wartet darauf, dass einige Daten abgerufen werden. Plötzlich tritt ein unerwarteter Fehler auf und Sie müssen den Browser ordnungsgemäß schließen.
Ohne reason
hätten Sie keine Ahnung, ob die Ressourcen für die laufende Aufgabe freigegeben wurden und warum der Vorgang unterbrochen wurde. Nicht zu wissen, was vor sich geht, ist schlecht, insbesondere wenn Sie die Aufgabe haben, die Ursache für einen Fehler in den Protokollen eines automatisierten Web-Scraping-Skripts zu untersuchen. Hier kommt Ihnen das Feld „Grund“ zu Hilfe und erspart Ihnen Tage mühsamer Nachforschungen.
Großartig, diese API-Einführung erleichtert das Debuggen erheblich! 🚀
Das Playwright Test Generator-Tool , das zum automatischen Erstellen von Tests entwickelt wurde, während Sie Aktionen in einem Browser ausführen, bietet jetzt die folgenden Schaltflächen:
expect(locator).toBeVisible()
Anweisung generieren.expect(locator).toContainText()
-Anweisung sicher, dass das ausgewählte HTML-Element bestimmten Text enthältexpect(locator).toHaveValue()
Anweisung hinzufügen.
Stellen Sie sich Folgendes vor : Sie arbeiten an einer komplexen Aufgabe, beispielsweise dem Erstellen eines Web-Scrapers für eine dynamische Webseite . Angenommen, Sie müssen sicherstellen, dass einige Elemente auf der Seite sichtbar sind und bestimmten Text oder Werte enthalten. Das würde eine komplexe Logik erfordern 👎. Aber warten Sie – dank dieses neuen Updates läuft alles auf ein paar Klicks im Testgenerator-Tool hinaus!
Sehen Sie sich diese neue Funktion im folgenden GIF in Aktion an:
Durch diese Testgenerator-Interaktion wird der folgende TypeScript-Test für Sie erstellt:
import { test, expect } from '@playwright/test'; test('test', async ({ page }) => { await page.goto('https://playwright.dev/'); await expect(page.getByRole('banner')).toContainText('Get started'); });
✨ Ziemlich magisch, nicht wahr? ✨
In der großen Tradition der großen Updates von Playwright wurde die Reihe der unterstützten Browser mit neueren Versionen aktualisiert:
Aber das ist nicht alles! Die aktuelle Version von Playwright hat sich auch bei den folgenden stabilen Kanälen hervorragend bewährt:
Google Chrome 119
Microsoft Edge 119
Die Methoden download.path()
und download.createReadStream()
geben jetzt einen Fehler aus, wenn der Download-Vorgang fehlschlägt oder abgebrochen wird.
Das Playwright-Docker-Image wird jetzt mit Node.js v20 geliefert.
Sie möchten keine neuen Updates verpassen? Behalten Sie die Seite mit den Playwright- Versionshinweisen im Auge!
Jetzt denken Sie bestimmt: „Wie komme ich an diese fantastischen Neuzugänge?“ Nun, indem ich Playwright auf die neueste Version aktualisiere, mein Freund!
Starten Sie einfach den folgenden Befehl:
npm install @playwright/test@latest
Und vergessen Sie, die Browserinstanzen zu aktualisieren mit:
npx playwright install
Voilà! Sie sind bereit, die neuesten Playwright-Updates in die Hände zu bekommen!
Unabhängig davon, wie aktuell Ihre Version von Playwright ist, können die meisten Websites Ihre automatisierten Skripte weiterhin erkennen und blockieren. Aber wie ist das überhaupt möglich? Nun, Headless-Browser, die von Bibliotheken wie Playwright gesteuert werden, beinhalten spezielle Konfigurationen und Einstellungen, die von Anti-Bot-Lösungen als Warnsignale angesehen werden. Die Konsequenz? Sofortige Sperrungen oder das unerwünschte Erscheinen von CAPTCHA und anderen lästigen Hindernissen .
Jetzt denken Sie vielleicht: „Kann ich nicht einfach meine Browsereinstellungen anpassen, um das zu vermeiden?“
Nicht so schnell, Kleiner! Das ist aus mindestens drei zwingenden Gründen keine gute Idee:
Das Problem liegt nicht an der Browser-Automatisierungsbibliothek selbst (Playwright rockt! 🤘), sondern vielmehr daran, dass der Browser unter Kontrolle ist. Die Lösung wäre ein hochgradig anpassbarer Browser, der:
Ob Sie es glauben oder nicht, das ist keine weit entfernte Fata Morgana. Das ist wahr und genau darum geht es bei der Scraping-Browser-Lösung von Bright Data !
Playwright ist der Rockstar unter den Browser-Automatisierungsbibliotheken, und genau wie der Weihnachtsmann an Heiligabend Geschenke verteilt, veröffentlicht Microsoft jeden Monat ein großes neues Update. Hier haben Sie gesehen, wie Sie die neuesten Playwright-Updates optimal nutzen können, aber seien wir ehrlich: Sie werden Sie nicht auf magische Weise für Websites mit fortschrittlichen Bot-Erkennungstechnologien unsichtbar machen.
Weichen Sie dieser Kugel mit der Scraping-Browser-Lösung von Bright Data aus und schließen Sie sich unserer Mission an, das Internet zu einem öffentlichen Ort für alle und überall zu machen, auch durch automatisierte Skripte!
Erkunden Sie das Web bis zum nächsten Mal weiterhin in Freiheit!