autogen_ext.agents.web_surfer.playwright_controller#

class PlaywrightController(downloads_folder: str | None = None, animate_actions: bool = False, viewport_width: int = 1440, viewport_height: int = 900, _download_handler: Callable[[Download], None] | None = None, to_resize_viewport: bool = True)[source]#

Basiert auf: object

Eine Hilfsklasse, die es Playwright ermöglicht, mit Webseiten zu interagieren, um Aktionen wie Klicken, Ausfüllen und Scrollen durchzuführen.

Parameter:
  • downloads_folder (str | None) – Der Ordner, in dem Downloads gespeichert werden. Wenn None, werden keine Downloads gespeichert.

  • animate_actions (bool) – Ob die Aktionen animiert werden sollen (virtueller Cursor zum Klicken).

  • viewport_width (int) – Die Breite des Viewports.

  • viewport_height (int) – Die Höhe des Viewports.

  • _download_handler (Optional[Callable[[Download], None]]) – Eine Funktion zur Handhabung von Downloads.

  • to_resize_viewport (bool) – Ob der Viewport neu dimensioniert werden soll

async sleep(page: Page, duration: int | float) None[source]#

Pausiert die Ausführung für eine angegebene Dauer.

Parameter:
  • page (Page) – Das Playwright-Seitenobjekt.

  • duration (Union[int, float]) – Die Dauer der Pause in Millisekunden.

async get_interactive_rects(page: Page) Dict[str, InteractiveRegion][source]#

Ruft interaktive Bereiche von der Webseite ab.

Parameter:

page (Page) – Das Playwright-Seitenobjekt.

Gibt zurück:

Dict[str, InteractiveRegion] – Ein Wörterbuch mit interaktiven Bereichen.

async get_visual_viewport(page: Page) VisualViewport[source]#

Ruft den visuellen Viewport der Webseite ab.

Parameter:

page (Page) – Das Playwright-Seitenobjekt.

Gibt zurück:

VisualViewport – Der visuelle Viewport der Seite.

async get_focused_rect_id(page: Page) str | None[source]#

Ruft die ID des aktuell fokussierten Elements ab.

Parameter:

page (Page) – Das Playwright-Seitenobjekt.

Gibt zurück:

str – Die ID des fokussierten Elements oder None, wenn kein Steuerelement fokussiert ist.

async get_page_metadata(page: Page) Dict[str, Any][source]#

Ruft Metadaten von der Webseite ab.

Parameter:

page (Page) – Das Playwright-Seitenobjekt.

Gibt zurück:

Dict[str, Any] – Ein Wörterbuch mit Seitenmetadaten.

async on_new_page(page: Page) None[source]#

Behandelt Aktionen, die auf einer neuen Seite ausgeführt werden sollen.

Parameter:

page (Page) – Das Playwright-Seitenobjekt.

async back(page: Page) None[source]#

Navigiert zur vorherigen Seite zurück.

Parameter:

page (Page) – Das Playwright-Seitenobjekt.

async visit_page(page: Page, url: str) Tuple[bool, bool][source]#

Besucht eine angegebene URL.

Parameter:
  • page (Page) – Das Playwright-Seitenobjekt.

  • url (str) – Die zu besuchende URL.

Gibt zurück:

Tuple[bool, bool] – Ein Tupel, das angibt, ob die vorherigen Metadaten-Hash und der letzte Download zurückgesetzt werden sollen.

async page_down(page: Page) None[source]#

Scrollt die Seite um eine Viewporthöhe minus 50 Pixel nach unten.

Parameter:

page (Page) – Das Playwright-Seitenobjekt.

async page_up(page: Page) None[source]#

Scrollt die Seite um eine Viewporthöhe minus 50 Pixel nach oben.

Parameter:

page (Page) – Das Playwright-Seitenobjekt.

async gradual_cursor_animation(page: Page, start_x: float, start_y: float, end_x: float, end_y: float) None[source]#

Animiert die Cursorbewegung graduell von den Start- zu den Endkoordinaten.

Parameter:
  • page (Page) – Das Playwright-Seitenobjekt.

  • start_x (float) – Die Start-x-Koordinate.

  • start_y (float) – Die Start-y-Koordinate.

  • end_x (float) – Die End-x-Koordinate.

  • end_y (float) – Die End-y-Koordinate.

async add_cursor_box(page: Page, identifier: str) None[source]#

Fügt eine rote Cursor-Box um das Element mit der angegebenen Kennung hinzu.

Parameter:
  • page (Page) – Das Playwright-Seitenobjekt.

  • identifier (str) – Die Elementkennung.

async remove_cursor_box(page: Page, identifier: str) None[source]#

Entfernt die rote Cursor-Box um das Element mit der angegebenen Kennung.

Parameter:
  • page (Page) – Das Playwright-Seitenobjekt.

  • identifier (str) – Die Elementkennung.

async click_id(page: Page, identifier: str) Page | None[source]#

Klickt auf das Element mit der angegebenen Kennung.

Parameter:
  • page (Page) – Das Playwright-Seitenobjekt.

  • identifier (str) – Die Elementkennung.

Gibt zurück:

Page | None – Die neue Seite, wenn eine neue Seite geöffnet wird, ansonsten None.

async hover_id(page: Page, identifier: str) None[source]#

Fährt mit der Maus über das Element mit der angegebenen Kennung.

Parameter:
  • page (Page) – Das Playwright-Seitenobjekt.

  • identifier (str) – Die Elementkennung.

async fill_id(page: Page, identifier: str, value: str, press_enter: bool = True) None[source]#

Füllt das Element mit der angegebenen Kennung mit dem angegebenen Wert.

Parameter:
  • page (Page) – Das Playwright-Seitenobjekt.

  • identifier (str) – Die Elementkennung.

  • value (str) – Der einzufüllende Wert.

async scroll_id(page: Page, identifier: str, direction: str) None[source]#

Scrollt das Element mit der angegebenen Kennung in die angegebene Richtung.

Parameter:
  • page (Page) – Das Playwright-Seitenobjekt.

  • identifier (str) – Die Elementkennung.

  • direction (str) – Die Scrollrichtung („oben“ oder „unten“).

async get_webpage_text(page: Page, n_lines: int = 50) str[source]#

Ruft den Textinhalt der Webseite ab.

Parameter:
  • page (Page) – Das Playwright-Seitenobjekt.

  • n_lines (int) – Die Anzahl der Zeilen, die aus dem inneren Text der Seite zurückgegeben werden sollen.

Gibt zurück:

str – Der Textinhalt der Seite.

async get_visible_text(page: Page) str[source]#

Ruft den Textinhalt des Browser-Viewports ab (ungefähr).

Parameter:

page (Page) – Das Playwright-Seitenobjekt.

Gibt zurück:

str – Der Textinhalt der Seite.

async get_page_markdown(page: Page) str[source]#

Ruft den Markdown-Inhalt der Webseite ab. Derzeit nicht implementiert.

Parameter:

page (Page) – Das Playwright-Seitenobjekt.

Gibt zurück:

str – Der Markdown-Inhalt der Seite.