Öffnen und Schließen von Tabs in einem Browser mit Selenium Python

Fariba Laiq 10 Oktober 2023
  1. Installieren Sie Selenium und Chrome WebDriver
  2. Öffnen Sie einen Tab in einem Browser mit Selenium Python
  3. Öffnen Sie einen neuen Tab in einem Browser mit Selenium Python
  4. Schließen Sie einen Tab in einem Browser mit Selenium Python
  5. Schließen Sie einen Tab und wechseln Sie zu einem anderen Tab in einem Browser mit Selenium Python
Öffnen und Schließen von Tabs in einem Browser mit Selenium Python

Selenium ist ein leistungsstarkes Tool zur Webautomatisierung und zum Testen. Wir schreiben Skripte mit Selenium, das die Kontrolle über Webbrowser übernimmt und bestimmte Aktionen ausführt.

In dieser Anleitung schreiben wir ein Skript in Python, das eine Website automatisch in einem neuen Tab öffnet und schließt.

Installieren Sie Selenium und Chrome WebDriver

Um Selenium zu installieren, verwenden wir den folgenden Befehl.

#Python 3.x
pip install selenium

ChromeDriver ist eine weitere ausführbare Datei, die Selenium WebDriver verwendet, um mit Chrome zu interagieren. Wenn wir Aufgaben im Chrome-Webbrowser automatisieren möchten, müssen wir auch ChromeDriver installieren.

Basierend auf der Version des Chrome-Browsers müssen wir einen kompatiblen Treiber dafür auswählen. Im Folgenden sind die Schritte zum Installieren und Konfigurieren des Chrome-Treibers aufgeführt:

  1. Klicken Sie auf diesen Link. Laden Sie den Chrome-Treiber entsprechend der Version Ihres Chrome-Browsers und der Art des Betriebssystems herunter.
  2. Wenn Sie die Version Ihres Chrome-Browsers finden möchten, klicken Sie auf die drei Punkte in der oberen rechten Ecke von Chrome, klicken Sie auf Hilfe und wählen Sie Über Google Chrome. Sie können die Chrome-Version im Abschnitt Info sehen.
  3. Extrahieren Sie die ZIP-Datei und führen Sie den Chrome-Treiber aus.

Öffnen Sie einen Tab in einem Browser mit Selenium Python

Wir haben die WebDriver-Instanz im folgenden Code erstellt und den Pfad zum Chrome-Treiber angegeben. Dann haben wir die URL der Zielwebsite mit der Methode get() mit der Treiberinstanz gesetzt.

Die Zielwebsite wird im Chrome-Browser geöffnet.

Beispielcode:

# Python 3.x
from selenium import webdriver

driver = webdriver.Chrome(r"E:\download\chromedriver.exe")
driver.get("https://www.verywellmind.com/what-is-personality-testing-2795420")

Ausgabe:

Selen Open Tab Python

Öffnen Sie einen neuen Tab in einem Browser mit Selenium Python

Um einen neuen Tab im selben Browserfenster zu öffnen, verwenden wir den JavaScript-Executor. Es führt JavaScript-Befehle mit der Methode execute_script() aus.

Wir werden den JavaScript-Befehl als Argument an diese Methode übergeben. Wir werden den Befehl window.open() verwenden, um einen weiteren Tab im Fenster zu öffnen.

Das Fensterhandle speichert die eindeutige Adresse des im Webbrowser geöffneten Fensters. Die Methode switch_to_window() schaltet auf die angegebene Fensteradresse um.

1 repräsentiert die Adresse des zweiten Fensters. Abschließend geben wir die URL der neuen Website mit der Methode get() an.

Beispielcode:

# Python 3.x
from selenium import webdriver

driver = webdriver.Chrome(r"E:\download\chromedriver.exe")
driver.get("https://www.verywellmind.com/what-is-personality-testing-2795420")
driver.execute_script("window.open('');")
driver.switch_to.window(driver.window_handles[1])
driver.get(
    "https://www.indeed.com/career-advice/career-development/types-of-personality-test"
)

Ausgabe:

Selen Neuen Tab öffnen Python

Schließen Sie einen Tab in einem Browser mit Selenium Python

Wir werden die close()-Methode mit dem Treiber verwenden, um die Registerkarte zu schließen.

Beispielcode:

# Python 3.x
from selenium import webdriver

driver = webdriver.Chrome(r"E:\download\chromedriver.exe")
url = "https://www.16personalities.com/free-personality-test"
driver.get(url)
driver.close()

Schließen Sie einen Tab und wechseln Sie zu einem anderen Tab in einem Browser mit Selenium Python

Mit Selenium im folgenden Code haben wir eine URL in einem Tab geöffnet. Wir haben einen weiteren Tab geöffnet und mit switch_to.window(driver.window_handles[1]) dorthin gewechselt.

Die neue Registerkarte öffnet die angegebene URL. Nun schließen wir diesen Tab mit der Methode close() und wechseln zurück zum vorherigen Tab mit der Methode switch_to.window(driver.window_handles[0]).

Beispielcode:

# Python 3.x
from selenium import webdriver

driver = webdriver.Chrome(r"E:\download\chromedriver.exe")
url = "https://www.16personalities.com/free-personality-test"
driver.get(url)
driver.execute_script("window.open('');")
driver.switch_to.window(driver.window_handles[1])
driver.get("https://www.16personalities.com/personality-types")
driver.close()
driver.switch_to.window(driver.window_handles[0])

Ausgabe:

Selenium Schalter Neue Registerkarte

Selen Neue Registerkarte schließen und zur vorherigen Registerkarte wechseln

Fariba Laiq avatar Fariba Laiq avatar

I am Fariba Laiq from Pakistan. An android app developer, technical content writer, and coding instructor. Writing has always been one of my passions. I love to learn, implement and convey my knowledge to others.

LinkedIn

Verwandter Artikel - Python Selenium