Если вы попытаетесь открыть ссылку в своем вопросе (в браузере, использующем режим инкогнито или что-то подобное, например, удалить куки), вы увидите, что вам нужно войти на сайт, чтобы получить доступ к странице. Вот почему вы получаете сообщение об ошибке 400 Bad Request
в ответ от сервера.
В разделе часто задаваемых вопросов на веб-сайте, к которому вы пытаетесь получить доступ:
Как работает аутентификация? Advent of Code использует OAuth для подтверждения вашей личности через другие сервисы. Когда вы входите в систему, вы предоставляете свои учетные данные только этой службе, но не Advent of Code. Затем служба, которую вы используете, сообщает серверам Advent of Code, что вы действительно являетесь вами. В общем, это не раскрывает никакой информации о вас за пределами того, что уже является публичным; Вот примеры из Reddit и GitHub. Advent of Code запомнит ваш уникальный идентификатор, имена, URL-адрес и изображение из службы, которую вы используете для аутентификации.
Веб-сайт использует OAuth для обработки входов по URL-адресу, который вы создаете, для этих токенов доступа , Вы можете использовать такую библиотеку, как python-oauth2
, чтобы помочь вам в этом (есть и другие, которые вы можете прочитать и решить, какие из них вы хотели бы использовать). Создание и понимание того, как делать http-запросы, выходит за рамки этого ответа. Я бы посоветовал вам взглянуть на inte rnet для некоторых объяснений и повторить попытку, если вы застряли, задайте другой вопрос. В противном случае, возможно, будет проще сохранить файл из браузера ... Но я оставлю этот ответ здесь следующему человеку, столкнувшемуся с той же проблемой.