Dramatiker Python, wie man das Browserfenster erkennt, ist geschlossenPython

Python-Programme
Anonymous
 Dramatiker Python, wie man das Browserfenster erkennt, ist geschlossen

Post by Anonymous »

Ich schreibe ein einfaches Python -Skript mit Requests.get , um Daten von einer Website abzukratzen, für die Anmeldung erforderlich ist. Das Skript prüft zunächst, ob der Benutzer bereits angemeldet ist. Wenn nicht, startet er einen Chrom -Browser über Dramatiker und lässt sich den Benutzer manuell anmelden. Danach werden Cookies aus dem Dramatikerkontext extrahiert und an Anforderungen übergeben. Sobald das Fenster geschlossen ist, sollte das Skript die Ausführung fortsetzen. Ich habe versucht, Page.is_closed () und browser.is_connected () zu verwenden, aber keiner von ihnen hat wie erwartet gearbeitet - sie scheinen nicht zu erkennen, wann das Fenster manuell geschlossen ist. Es sieht so aus, als würden diese Überprüfungen nur den internen Prozess widerspiegeln, nicht den Fensterzustand. < /P>
Hier ist eine vereinfachte Version meines Code

Code: Select all

import time
from playwright.sync_api import sync_playwright

with sync_playwright() as p:
browser = p.chromium.launch(headless=False)
context = browser.new_context()
page = context.new_page()

page.goto("https://example.com/login")
print("Please log in, then close the window")

# Try to detect when the window is closed
while True:
if page.is_closed():
print("Window is closed")
break
time.sleep(1)

# Extract cookies
cookies = context.cookies()
print("Cookies:", cookies)

browser.close()
Die while -Schleife beendet niemals, auch wenn der Benutzer das Browserfenster manuell schließt.

Quick Reply

Change Text Case: 
   
  • Similar Topics
    Replies
    Views
    Last post