Аналитический инструмент ScratchAPI: различия между версиями
| Строка 42: | Строка 42: | ||
{{#mermaid: | {{#mermaid: | ||
flowchart TB | |||
Profile["Profile"] | |||
Stats["Stats"] | |||
Profile --> Stats | Profile --> Stats | ||
Profile_Details["📌 Profile Details:\n• username: griffpatch\n• id: 1882674\n• joined: 2012-10-24\n• country: United Kingdom"] | |||
Stats_Details["📊 Stats Details:\n• followers: 745K+\n• projects: 250+\n• views: 183M+"] | |||
Profile --- Profile_Details | |||
Stats --- Stats_Details | |||
class Profile,Stats fill:#4a76a8,stroke:#2c3e50,color:#fff,stroke-width:2px | |||
class Profile_Details,Stats_Details fill:#e3f2fd,stroke:#1976d2,stroke-width:1px | |||
}} | }} | ||
Версия от 20:38, 27 марта 2026
Анализ сообщества Scratch через API
Карточка проекта
- Название проекта
- Анализ профиля участника и студии в социальной сети Scratch с помощью открытого API
- Автор
- Бойко Константин Константинович
- Группа
- АДЭУ-221
- Дисциплина
- Работа с API социальных сетей и визуализация данных
- Статус проекта
- Выполнен
Введение
Цель проекта — показать, как использовать открытое API социальной сети Scratch для исследования цифрового сообщества «сообщества кода». В рамках проекта с помощью запросов к https://api.scratch.mit.edu собираются данные об отдельном участнике (например, griffpatch) и одной студии, затем результаты визуализируются в виде UML‑диаграмм и используются для простого количественного анализа активности.
Цели проекта
- Научиться формировать HTTP‑запросы к API социальной сети Scratch.
- Собрать основные данные о пользователе: идентификатор, дата регистрации, страна, краткая биография.
- Собрать данные о студии: название, количество проектов, подписчиков, комментариев.
- Представить результаты в виде PlantUML‑диаграмм (структура профиля и студии).
- Сделать краткий количественный анализ активности участника на основе открытых данных.
Структура проекта
Проект реализован на языке Python и состоит из следующих частей:
- Основной скрипт — отправка запросов к Scratch API, вывод сырых JSON‑данных и генерация PlantUML‑кода.
- Функции запроса — отдельные функции для получения данных пользователя и студии.
- Функции визуализации — генерация текста диаграмм PlantUML для профиля и студии.
- Отчёт — данная вики‑страница, где приведён код запросов, примеры JSON и получившиеся диаграммы.
Диаграммы классов:
Описание работы скрипта
Получение данных пользователя
Скрипт отправляет GET‑запрос по адресу:
https://api.scratch.mit.edu/users/USERNAME/
и сохраняет в переменные:
id— числовой идентификатор участника;username— имя пользователя;history.joined— дата регистрации (используется только дата, без времени);profile.country— страна;profile.bio— краткая биография.
Пример фрагмента JSON для пользователя griffpatch:
{
"id": 1882674,
"username": "griffpatch",
"history": {
"joined": "2012-10-24T12:59:31.000Z"
},
"profile": {
"country": "United Kingdom",
"bio": "Got hooked on coding when I was a kid..."
}
}
Получение данных студии
Для студии используется запрос вида:
https://api.scratch.mit.edu/studios/ID/
Из ответа используются поля:
id,title,description;history.created,history.modified;stats.projects,stats.followers,stats.comments.
Пример фрагмента JSON:
{
"id": 107193,
"title": "name",
Исходный код и расширенные комментарии:
Файл:Отчет по проекту Бойко.pdf
