Продолжайте сталкиваться с проблемой. Два разных сайта, которые пытаются загрузить csv-файлы, которые находятся за аутентификацией, чтобы я мог хранить данные в Pandas.
Я запускаю сеанс запросов, вход в систему просто отлично. Я могу получить доступ к любой HTML-странице, которую я хочу, после использования запросов.
Когда я пытаюсь получить доступ к файлам CSV, я получаю ошибку аутентификации.
Если я захожу в Chrome и авторизируюсь и проверяю, я вижу, чтоЕсть куки, установленные для аутентификации. На одном сайте это RememberMe, а на другом - mozauth.
Если я беру куки, которые установлены в браузере, и сам устанавливаю эти куки с запросом, я получаю 200, и файл загружается просто отлично. Если я попытаюсь просмотреть файлы cookie и заголовки, которые я получаю в ответ на запрос при извлечении его через Python, я не вижу этих файлов cookie. Я не могу понять, как получить к ним доступ, чтобы я мог автоматизировать этот процесс. Я пытался вызвать некоторые из URL перенаправления, но я их не вижу. Я вижу, что эти куки установлены с httponly.
loginurl = 'https://urlforlogin' ## Initial Page I login at
posturl = 'https://url/report/export' ## Where the CSV is on the web
user = 'X'
password = 'X'
with requests.Session() as session:
session.get(loginurl)
session.post(loginurl, auth=HTTPBasicAuth(user, password), verify=True, stream=True, allow_redirects=True) #Works Fine
download = session.get(posturl) #Get a 401 and a credential error
Чего мне не хватает в процессе? Как я могу получить файлы cookie для установки или каким-либо образом получить их в процессе работы с Python, чтобы я мог автоматически загружать файлы?
ОБНОВЛЕНИЕ Я до сих пор не нашел способа заставить эту работу работать с использованием запросов. Хотя я решил использовать Selenium. Это гарантирует, что я получаю все необходимые файлы cookie, и позволяет мне скачивать нужные файлы.