ruchi yadav
ruchi yadav

Reputation: 41

how to load multiple urls in driver.get()?

How to load multiple urls in driver.get() ?

I am trying to load 3 urls in below code, but how to load the other 2 urls?

And afterwards the next challenge is to pass authentication for all the urls as well which is same.

from selenium import webdriver
from selenium.webdriver.common.keys import Keys

driver = webdriver.Chrome(executable_path=r"C:/Users/RYadav/AppData/Roaming/Microsoft/Windows/Start Menu/Programs/Python 3.8/chromedriver.exe")

driver.get("https://fleet.my.salesforce.com/reportbuilder/reportType.apexp")#put here the adress of your page

elem = driver.find_elements_by_xpath('//*[@id="ext-gen63"]')#put here the content you have put in Notepad, ie the XPath

button = driver.find_element_by_id('id="ext-gen63"')

print(elem.get_attribute("class"))

driver.close

submit_button.click()

Upvotes: 0

Views: 3961

Answers (2)

SeleniumUser
SeleniumUser

Reputation: 4177

Try below code :

def getUrls(targeturl):
    driver = webdriver.Chrome(executable_path=r" path for chromedriver.exe")
    driver.get("http://www."+targeturl+".com")
    # perform your taks here
    driver.quit()

for i in range(3):
    webPage = ['google','facebook','gmail']
    for i in webPage:
        print i;
        getUrls(i)

Upvotes: 1

Jonathan Sánchez
Jonathan Sánchez

Reputation: 464

You can't load more than 1 url at a time for each Webdriver. If you want to do so, you maybe need some multiprocessing module. If you want to do an iterative solution, just create a list with every url you need and loop through it. With that you won't have the credential problem neither.

Upvotes: 1

Related Questions