@kostyagrigoriev

Как работать с календарём в Python?

хочу сделать скрипт на питоне, который будет заносить моё учебное расписание в календарь. Важно, чтобы этот календарь был совместим с приложением "календарь" в айфоне. Это нужно для того, чтобы расписание отображалось в моём любимом things 3.

Я практически не программист, но делал раньше на питоне скрипты для автоматизации всяких разных своих задач. В этот раз совсем не смог найти понятной информации о том, как работать с календарём.

Прошу вас посоветовать, как и с каким сервисом (гугловский, эпловский, ещё какой-то календарь?) мне проще всего реализовать мою идею, дать ссылочки на полезные материалы.
  • Вопрос задан
  • 113 просмотров
Пригласить эксперта
Ответы на вопрос 1
Vindicar
@Vindicar
RTFM!
Как правильно посоветовали в комментариях, разбей задачу на меньшие.
1. Как получить данные с сайта университета? Смотри в сторону пакета requests.
Также тебе потребуется понять, как сам сайт выкладывает эти данные. Просто сохрани скачанную страницу в файл и посмотри, есть ли внутри данные, которые тебе нужны. Вообще советую сохзранять страницу в файл при любой ошибке, чтобы понять, не послал ли тебя сервер на крайний север. =)

Если данные записаны прямо в страницу, можешь использовать, скажем, BeautifulSoup, чтобы выцарапать их из HTML разметки.
Если же данных в странице нет, значит, сайт делает отдельный XHR запрос для подгрузки данных. Открой страницу расписания, и на этой вкладке открой панель разработчика в бразуере (обычно F12), а затем обнови страницу. Посмотри на запросы (там может быть фильтр по XHR, используй его) и найди тот, который подгружает что-то, похожее на нужные данные.
Тут могут быть два варианта: подгружается HTML разметка - тогда снова смотри в сторону BeautifulSoup. Или подгружается JSON - тогда используй встроенный в питон модуль json.
2. Так или иначе, ты должен будешь построить структуру данных, которая хранит требуемую тебе инфу. Например, список из словарей, где каждый словарь описывает одну пару. Структуру строй так, чтобы тебе с ней было удобно работать. Анализируя полученные в п. 1 данные, заполни эту структуру.
3. Выбери, с каким календарём ты всё-таки работаешь, и погугли, есть ли у него API. Привыкай искать и читать оригинальную документацию! Чатгпт и прочее может врать или ссылаться на устаревшие сведения.
Скорее всего API будет сводиться к HTTP запросам, которые можно будет выполнить с помощью всё того же requests.
Ответ написан
Ваш ответ на вопрос

Войдите, чтобы написать ответ

Похожие вопросы