Я написал код для загрузки файлов за каждый месяц в течение нескольких лет для каждого участка и места. Однако, поскольку я не могу изменить имя файлов через селен, я надеялся загрузить каждый файл места в отдельную папку. Здесь мой код
options = webdriver.ChromeOptions()
options.add_argument('download.default_directory=/Users/name/Downloads/' + p)
driver = webdriver.Chrome(chrome_options=options, executable_path="/Users/name/Downloads/chromedriver")
driver.get("https://jpwebsite.harriscountytx.gov/PublicExtracts/search.jsp")
где p
- идентификатор конкретного участка и места. К сожалению, файлы загружаются в /Users/name/Downloads
. Я добавил chromedriver в PATH
и просто использовал
driver = webdriver.Chrome(chrome_options=options)
но это дает мне следующее:
[Errno 2] No such file or directory.
Что я делаю неправильно? Спасибо!
Вы можете использовать временную метку для создания нового каталога. Также используйте словарь предпочтений для chrome options с параметрами prompt_for_download
и directory_upgrade
. попробуйте ниже пример:
from selenium import webdriver
import time
timestr = time.strftime("%Y%m%d-%H%M%S")
options = webdriver.ChromeOptions()
prefs = {
"download.default_directory": r"C:\Users\XXXX\downdir\stamp"+timestr,
"download.prompt_for_download": False,
"download.directory_upgrade": True
}
options.add_experimental_option('prefs', prefs)
driver = webdriver.Chrome(chrome_options=options)
driver.get("https://jpwebsite.harriscountytx.gov/PublicExtracts/search.jsp")
Попробуйте этот код, он работает для меня, просто создайте профиль для хрома и определите местоположение загрузки для тестов
from selenium import webdriver
options = webdriver.ChromeOptions()
options.add_argument("download.default_directory=D:/Sele_Downloads")
driver = webdriver.Chrome(chrome_options=options)
driver.get("https://jpwebsite.harriscountytx.gov/PublicExtracts/search.jsp")