Heim > Backend-Entwicklung > Python-Tutorial > Wie kann ich mehrere Registerkarten in Selenium WebDriver effizient öffnen, ohne mehrere Treiber zu erstellen?

Wie kann ich mehrere Registerkarten in Selenium WebDriver effizient öffnen, ohne mehrere Treiber zu erstellen?

Patricia Arquette
Freigeben: 2024-12-23 04:45:45
Original
908 Leute haben es durchsucht

How Can I Efficiently Open Multiple Tabs in Selenium WebDriver Without Creating Multiple Drivers?

Alternativer Ansatz zum Öffnen von Tabs in Selenium

In Ihrem Multiprozess-Python-Skript versuchen Sie, Websites auf neuen Tabs in Ihrem WebDriver zu öffnen, um dies zu verbessern Geschwindigkeit. Während die Verwendung von Selenium für Ihre Anforderungen unerlässlich ist, ist das Öffnen eines neuen WebDrivers für jede Website zeitaufwändig.

Anstatt phantomJS zu verwenden, dessen Ladezeit 3,5 Sekunden beträgt, sollten Sie in Betracht ziehen, einen WebDriver zu erstellen und mehrere Registerkarten für Ihre Tests zu verwalten . Dieser Ansatz wird die Effizienz erheblich verbessern.

Implementierung

Verwenden Sie den folgenden Selenium-Code, um das Verhalten beim Öffnen und Schließen von Tabs zu emulieren:

1

2

3

4

5

6

7

8

9

10

11

12

13

14

15

16

17

18

from selenium import webdriver

from selenium.webdriver.common.keys import Keys

 

# Create a single WebDriver

driver = webdriver.Firefox()

driver.get("http://www.google.com/")

 

# Open a new tab and navigate to a URL

driver.find_element_by_tag_name('body').send_keys(Keys.COMMAND + 't')  # or Keys.CONTROL + 't' on other OSs

driver.get('http://stackoverflow.com/')

 

# Once done with the page, close the tab

driver.find_element_by_tag_name('body').send_keys(Keys.COMMAND + 'w')  # or Keys.CONTROL + 'w' on other OSs

 

# Continue with your tests...

 

# Close the WebDriver when all tests are complete

driver.close()

Nach dem Login kopieren

Das obige ist der detaillierte Inhalt vonWie kann ich mehrere Registerkarten in Selenium WebDriver effizient öffnen, ohne mehrere Treiber zu erstellen?. Für weitere Informationen folgen Sie bitte anderen verwandten Artikeln auf der PHP chinesischen Website!

Erklärung dieser Website
Der Inhalt dieses Artikels wird freiwillig von Internetnutzern beigesteuert und das Urheberrecht liegt beim ursprünglichen Autor. Diese Website übernimmt keine entsprechende rechtliche Verantwortung. Wenn Sie Inhalte finden, bei denen der Verdacht eines Plagiats oder einer Rechtsverletzung besteht, wenden Sie sich bitte an admin@php.cn
Neueste Artikel des Autors
Beliebte Tutorials
Mehr>
Neueste Downloads
Mehr>
Web-Effekte
Quellcode der Website
Website-Materialien
Frontend-Vorlage