Selenium Webdriver Скачать каталог Вопрос - PullRequest
1 голос
/ 21 февраля 2020

Я создал python скрипт, который бы входил на сайт с селеном и загружал данные с определенной страницы в каталог, созданный скриптом на основе того, что он загрузил. Однако проблема, с которой я сталкиваюсь, заключается в том, что если я хочу загрузить с нескольких страниц в несколько каталогов, мне нужно переделать веб-драйвер. Chrome с другим каталогом загрузки по умолчанию, что заставляет скрипт повторно входить в систему в другой раз. Это неустойчиво, так как сайт, который я использую, имеет только очень много входов в день для обеспечения безопасности, поэтому он не может работать долго. Есть ли способ изменить каталог экземпляра селена chrome, пока экземпляр еще работает? Мой оригинальный код размещен ниже:

#Initialize the download directory folder
root = tkinter.Tk()
root.update()
path = filedialog.askdirectory(title="Choose a location to save the files")
root.destroy()

#make the download path
Dpath = path + '/' + ClientCode
Dpath = Dpath.replace('/','\\')

create the new folder 
os.mkdir(Dpath)


#Creates Chrome Instance to log into portal
options = webdriver.ChromeOptions()
options.add_argument('--lang=EN')

#Configures download folder
preferences = {"download.default_directory": "%s" % Dpath }
options.add_experimental_option("prefs", preferences)
#options.add_argument("--headless") #<- if you want to run in background mode
driver = webdriver.Chrome(executable_path='chromedriver', chrome_options=options)
driver.delete_all_cookies()
driver.get(url)

driver.find_element_by_xpath("//*[@id='formuserinput']").send_keys(login)
driver.find_element_by_xpath("//*[@id='formpassinput']").send_keys(password+'\n')

#Clicks link on page to download file 
driver.find_element_by_xpath(//html/body/div[1]/div[2]/div[2]/div[3]).click()
Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...