Хотя данные экзаменов Геттингенского университета могут просматриваться студентами в FlexNow, работать с ними там уже непросто. Поэтому я хотел бы предложить способ манипулирования данными экзамена, например. Б. Узнайте, какие экзамены самые простые/сложные или какие преподаватели дают более высокие оценки.
Функции, которые должны быть включены:
Университетскому серверу можно запросить отправку всех данных, которые можно просмотреть в FlexNow, с помощью простых запросов GET и POST. Для этого я использую модули requests
, urllib
и json
. На основе этого можно создать относительно полный набор данных.
Для каждого из примерно 10 000 модулей необходимо отправить POST-запрос, из которого можно найти данные по отдельным датам экзаменов (я собирал данные только за последние 10 семестров). Затем данные можно сохранить в виде таблицы с помощью pandas
. Я также использую numpy
для манипуляций.
Чтобы сэкономить другим работу, я добавлю в этот репозиторий свою собственную мини-версию документации по API, когда доберусь до нее. Его можно найти в файле documentation.md
. Кроме того, набор данных, который я использую, можно найти в этом репозитории как module_data.csv
.
Я изменил данные за несколько шагов, используя функции pandas
. Оглядываясь назад, я бы предпочел сделать это в Jupyter Notebook, так как это было бы более понятно. Поиск и манипулирование данными в пользовательских запросах осуществляется с помощью функций в analyze_modules.py
.
Хостинг приложения осуществляется через gunicorn
и модуль. Хероку ГКП. Приложение можно найти здесь (новый URL-адрес, поскольку у Heroku больше нет бесплатного плана).