如何使用Selenium与不同的窗口同时进行交互?

时间:2019-02-23 12:47:29

标签: python selenium

from selenium import webdriver

browser = webdriver.Chrome(r"chromedriver.exe")
browser_2 = webdriver.Chrome(r"chromedriver.exe")

browser.get("https://www.seleniumhq.org/")
browser_2.get("https://www.seleniumhq.org/")

browser.find_element_by_id("menu_download").click()
browser_2.find_element_by_id("menu_download").click()

是否有一种更干净的方法来单击两个窗口中的下载按钮,还是必须为每个浏览器实例重复代码?

我正在制作一个程序,需要在同一网站的多个实例中插入文本,勾选框,并且不想为每个窗口重复相同的代码。

2 个答案:

答案 0 :(得分:0)

每个浏览器都是不同的实例。您不能同时使用部分代码。所以答案是否定的。您不能使用另一个来执行此操作。不过,您上面的代码是正确的。

答案 1 :(得分:0)

如何?

path = 'chromedriver.exe'
n_drivers = 2

drivers = [webdriver.Chrome(path) for i in range(n_drivers)]

for driver in drivers:
    driver.get('https://www.seleniumhq.org/')
    driver.find_element_by_id('menu_download').click()