Seite 1 von 1

Zugriff auf ein vorhanden Browserinstanz

Verfasst: Montag 30. Juli 2018, 15:02
von tobias.billen
Glückauf zusammen,

ich möchte gerne auf eine aktive Instanz von Chrome zugrifen.

Dieses würde ich so erstellen:

Code: Alles auswählen

from selenium import webdriver

driver = webdriver.Chrome('chromedriver.exe')
driver.get('https://myurl.com/')
Dieser Code öffnet immer eine neue Instanz. Dass will ich nicht, sondern ich will in einer bereits offnen Instanz (sofern sie existiert) mein Script laufen lassen.

Viele Grüße aus dem Pott

Tobias Billen

Re: Zugriff auf ein vorhanden Browserinstanz

Verfasst: Montag 30. Juli 2018, 17:42
von __deets__
Das geht AFAIK nicht. Und das finde ich auch recht gut, denn sonst kann ein malizioeses Programm meinen Browser fernsteuern, und zB via PayPal irgendwelche Summen ueberweisen. Wenn du das nur fuer dich persoenlich machen willst, musst du wohl einen remote debugging port oeffnen, wenn du Chrom startest. Dann sollte das gehen.

Re: Zugriff auf ein vorhanden Browserinstanz

Verfasst: Dienstag 31. Juli 2018, 08:29
von tobias.billen
Vielen Dank für deine Antwort.

Ich selber bin nicht auf die Idee gekommen, diesen Ansatz so kriminell auszunutzen. Bevor ich eine Sackgasse renne, habe ich noch eine Verständnisfrage: Ich kann (bzw. Ich sollte) keine Webdienste über ein Python Script steuern? Oder kann kann ich über einen persönlichen remote debugging portauf die Webdienste zugreifen?

Viele Grüße aus dem Pott

Tobias Billen

Re: Zugriff auf ein vorhanden Browserinstanz

Verfasst: Dienstag 31. Juli 2018, 09:01
von __deets__
Du kannst nicht, weil der Browser das nicht zulaesst. Damit sowas wie Selenium funktioniert, muss er speziell gestartet werden, eben mit dieser debugging-Option. Dann erlaubt er eine Fernsteuerung. Damit wird eben verhindert, dass jemand einfach so auf einem laufenden System mit Browser diesen Uebernimmt. Der User muss schon bewusst einen Debugging-Browser starten (explizit, oder in 99.9% der Faelle implizit eben ueber den Driver wie du es ja oben beschreibst).