This commit is contained in:
2025-09-23 20:13:51 +05:00
commit 234525435d
21 changed files with 25832 additions and 0 deletions

View File

@@ -0,0 +1,400 @@
#!/usr/bin/env python3
# -*- coding: utf-8 -*-
"""
Демо-данные заведений среднего специального и высшего образования в Челябинске
Для случая, когда API 2GIS недоступен без ключа
"""
import json
def get_demo_institutions():
"""Возвращает список заведений среднего специального и высшего образования в Челябинске"""
institutions = [
# Университеты
{
"id": "demo_1",
"name": "Южно-Уральский государственный университет",
"full_name": "ФГАОУ ВО «Южно-Уральский государственный университет (национальный исследовательский университет)»",
"address": "проспект Ленина, 76, Челябинск",
"latitude": 55.1549,
"longitude": 61.4289,
"phones": ["+7 (351) 267-90-90"],
"categories": ["Университет", "Высшее образование"],
"source": "Демо-данные"
},
{
"id": "demo_2",
"name": "Челябинский государственный университет",
"full_name": "ФГБОУ ВО «Челябинский государственный университет»",
"address": "ул. Братьев Кашириных, 129, Челябинск",
"latitude": 55.1605,
"longitude": 61.4025,
"phones": ["+7 (351) 799-70-02"],
"categories": ["Университет", "Высшее образование"],
"source": "Демо-данные"
},
{
"id": "demo_3",
"name": "Челябинский государственный педагогический университет",
"full_name": "ФГБОУ ВО «Южно-Уральский государственный гуманитарно-педагогический университет»",
"address": "проспект Ленина, 69, Челябинск",
"latitude": 55.1545,
"longitude": 61.4267,
"phones": ["+7 (351) 216-56-01"],
"categories": ["Университет", "Педагогическое образование"],
"source": "Демо-данные"
},
{
"id": "demo_4",
"name": "Уральский государственный университет физической культуры",
"full_name": "ФГБОУ ВО «Уральский государственный университет физической культуры»",
"address": "ул. Орджоникидзе, 1, Челябинск",
"latitude": 55.1674,
"longitude": 61.3988,
"phones": ["+7 (351) 237-04-54"],
"categories": ["Университет", "Физическая культура"],
"source": "Демо-данные"
},
# Институты
{
"id": "demo_5",
"name": "Челябинский институт экономики и права",
"full_name": "АНО ВО «Челябинский институт экономики и права им. М.В. Ладошина»",
"address": "ул. Свободы, 155, Челябинск",
"latitude": 55.1890,
"longitude": 61.3176,
"phones": ["+7 (351) 217-18-18"],
"categories": ["Институт", "Экономика и право"],
"source": "Демо-данные"
},
{
"id": "demo_6",
"name": "Челябинский филиал РАНХиГС",
"full_name": "Челябинский филиал Российской академии народного хозяйства и государственной службы",
"address": "ул. Комарова, 26, Челябинск",
"latitude": 55.1823,
"longitude": 61.3895,
"phones": ["+7 (351) 220-11-91"],
"categories": ["Филиал института", "Государственная служба"],
"source": "Демо-данные"
},
# Колледжи и техникумы
{
"id": "demo_7",
"name": "Челябинский техникум промышленности и городского хозяйства",
"full_name": "ГБПОУ «Челябинский техникум промышленности и городского хозяйства имени Я.П. Осадчего»",
"address": "ул. Энтузиастов, 15, Челябинск",
"latitude": 55.1456,
"longitude": 61.3789,
"phones": ["+7 (351) 256-56-82"],
"categories": ["Техникум", "Промышленность"],
"source": "Демо-данные"
},
{
"id": "demo_8",
"name": "Челябинский медицинский колледж",
"full_name": "ГБПОУ «Челябинский базовый медицинский колледж»",
"address": "ул. Свободы, 159а, Челябинск",
"latitude": 55.1901,
"longitude": 61.3164,
"phones": ["+7 (351) 232-72-01"],
"categories": ["Медицинский колледж", "Среднее специальное образование"],
"source": "Демо-данные"
},
{
"id": "demo_9",
"name": "Челябинский государственный колледж индустрии питания и торговли",
"full_name": "ГБПОУ «Челябинский государственный колледж индустрии питания и торговли»",
"address": "ул. Энтузиастов, 21, Челябинск",
"latitude": 55.1444,
"longitude": 61.3812,
"phones": ["+7 (351) 256-71-90"],
"categories": ["Колледж", "Торговля и питание"],
"source": "Демо-данные"
},
{
"id": "demo_10",
"name": "Челябинский педагогический колледж №1",
"full_name": "ГБПОУ «Челябинский педагогический колледж № 1»",
"address": "ул. Красная, 305, Челябинск",
"latitude": 55.1733,
"longitude": 61.3456,
"phones": ["+7 (351) 263-89-50"],
"categories": ["Педагогический колледж", "Среднее специальное образование"],
"source": "Демо-данные"
},
{
"id": "demo_11",
"name": "Челябинский технологический колледж",
"full_name": "ГБПОУ «Челябинский технологический колледж»",
"address": "ул. Машиностроителей, 23, Челябинск",
"latitude": 55.1267,
"longitude": 61.4567,
"phones": ["+7 (351) 729-99-60"],
"categories": ["Технологический колледж", "Среднее специальное образование"],
"source": "Демо-данные"
},
{
"id": "demo_12",
"name": "Челябинский юридический колледж",
"full_name": "ЧОУ СПО «Челябинский юридический колледж»",
"address": "ул. Цвиллинга, 60, Челябинск",
"latitude": 55.1645,
"longitude": 61.4156,
"phones": ["+7 (351) 266-55-20"],
"categories": ["Юридический колледж", "Среднее специальное образование"],
"source": "Демо-данные"
},
{
"id": "demo_13",
"name": "Южно-Уральский государственный технический колледж",
"full_name": "ГБПОУ «Южно-Уральский государственный технический колледж»",
"address": "ул. Воровского, 16, Челябинск",
"latitude": 55.1598,
"longitude": 61.4034,
"phones": ["+7 (351) 263-44-36"],
"categories": ["Технический колледж", "Среднее специальное образование"],
"source": "Демо-данные"
},
{
"id": "demo_14",
"name": "Челябинский экономический колледж",
"full_name": "ЧОУ СПО «Челябинский экономический колледж»",
"address": "ул. Кирова, 159, Челябинск",
"latitude": 55.1534,
"longitude": 61.3789,
"phones": ["+7 (351) 263-78-05"],
"categories": ["Экономический колледж", "Среднее специальное образование"],
"source": "Демо-данные"
},
{
"id": "demo_15",
"name": "Челябинский автотранспортный техникум",
"full_name": "ГБПОУ «Челябинский автотранспортный техникум»",
"address": "ул. Монакова, 33, Челябинск",
"latitude": 55.1123,
"longitude": 61.4234,
"phones": ["+7 (351) 721-81-67"],
"categories": ["Автотранспортный техникум", "Среднее специальное образование"],
"source": "Демо-данные"
},
# Дополнительные университеты и институты
{
"id": "demo_16",
"name": "Челябинский государственный институт культуры",
"full_name": "ФГБОУ ВО «Челябинский государственный институт культуры»",
"address": "ул. Орджоникидзе, 36а, Челябинск",
"latitude": 55.1699,
"longitude": 61.4018,
"phones": ["+7 (351) 263-83-18"],
"categories": ["Институт культуры", "Высшее образование"],
"source": "Демо-данные"
},
{
"id": "demo_17",
"name": "Магнитогорский государственный технический университет (филиал)",
"full_name": "Челябинский филиал ФГБОУ ВО «МГТУ им. Г.И. Носова»",
"address": "ул. 250-летия Челябинска, 17, Челябинск",
"latitude": 55.1589,
"longitude": 61.3756,
"phones": ["+7 (351) 799-74-45"],
"categories": ["Филиал университета", "Техническое образование"],
"source": "Демо-данные"
},
{
"id": "demo_18",
"name": "Российский государственный профессионально-педагогический университет (филиал)",
"full_name": "Челябинский филиал ФГАОУ ВО «РГППУ»",
"address": "ул. Машиностроителей, 11, Челябинск",
"latitude": 55.1298,
"longitude": 61.4523,
"phones": ["+7 (351) 729-99-10"],
"categories": ["Филиал университета", "Педагогическое образование"],
"source": "Демо-данные"
},
# Дополнительные колледжи и техникумы
{
"id": "demo_19",
"name": "Челябинский государственный промышленно-гуманитарный техникум",
"full_name": "ГБПОУ «Челябинский государственный промышленно-гуманитарный техникум им. А.В. Яковлева»",
"address": "ул. Красноармейская, 88, Челябинск",
"latitude": 55.1678,
"longitude": 61.4125,
"phones": ["+7 (351) 263-22-89"],
"categories": ["Промышленно-гуманитарный техникум", "Среднее специальное образование"],
"source": "Демо-данные"
},
{
"id": "demo_20",
"name": "Челябинский радиотехнический техникум",
"full_name": "ГБПОУ «Челябинский радиотехнический техникум»",
"address": "ул. Цвиллинга, 38, Челябинск",
"latitude": 55.1634,
"longitude": 61.4089,
"phones": ["+7 (351) 232-08-71"],
"categories": ["Радиотехнический техникум", "Среднее специальное образование"],
"source": "Демо-данные"
},
{
"id": "demo_21",
"name": "Челябинский механико-технологический техникум",
"full_name": "ГБПОУ «Челябинский механико-технологический техникум»",
"address": "ул. Агалакова, 102, Челябинск",
"latitude": 55.1445,
"longitude": 61.3756,
"phones": ["+7 (351) 256-78-34"],
"categories": ["Механико-технологический техникум", "Среднее специальное образование"],
"source": "Демо-данные"
},
{
"id": "demo_22",
"name": "Челябинский строительный колледж",
"full_name": "ГБПОУ «Челябинский строительный колледж»",
"address": "ул. Электростальская, 12, Челябинск",
"latitude": 55.1234,
"longitude": 61.4567,
"phones": ["+7 (351) 729-88-90"],
"categories": ["Строительный колледж", "Среднее специальное образование"],
"source": "Демо-данные"
},
{
"id": "demo_23",
"name": "Челябинский энергетический колледж",
"full_name": "ГБПОУ «Челябинский энергетический колледж им. С.М. Кирова»",
"address": "ул. Энергетиков, 44, Челябинск",
"latitude": 55.1345,
"longitude": 61.4234,
"phones": ["+7 (351) 721-17-17"],
"categories": ["Энергетический колледж", "Среднее специальное образование"],
"source": "Демо-данные"
},
{
"id": "demo_24",
"name": "Южно-Уральский многопрофильный колледж",
"full_name": "ГБПОУ «Южно-Уральский многопрофильный колледж»",
"address": "ул. Доватора, 16а, Челябинск",
"latitude": 55.1456,
"longitude": 61.3987,
"phones": ["+7 (351) 263-44-78"],
"categories": ["Многопрофильный колледж", "Среднее специальное образование"],
"source": "Демо-данные"
},
{
"id": "demo_25",
"name": "Челябинский колледж физической культуры",
"full_name": "ГБПОУ «Челябинский колледж физической культуры»",
"address": "ул. Российская, 258, Челябинск",
"latitude": 55.1567,
"longitude": 61.3456,
"phones": ["+7 (351) 237-25-25"],
"categories": ["Колледж физической культуры", "Среднее специальное образование"],
"source": "Демо-данные"
},
{
"id": "demo_26",
"name": "Челябинский социально-профессиональный колледж",
"full_name": "ГБПОУ «Челябинский социально-профессиональный колледж «Сфера»",
"address": "ул. Чичерина, 38, Челябинск",
"latitude": 55.1678,
"longitude": 61.3234,
"phones": ["+7 (351) 264-65-65"],
"categories": ["Социально-профессиональный колледж", "Среднее специальное образование"],
"source": "Демо-данные"
},
# Частные образовательные учреждения
{
"id": "demo_27",
"name": "Международный институт дизайна и сервиса",
"full_name": "ЧОУ ВО «Международный институт дизайна и сервиса»",
"address": "ул. Воровского, 36, Челябинск",
"latitude": 55.1589,
"longitude": 61.4012,
"phones": ["+7 (351) 265-35-35"],
"categories": ["Частный институт", "Дизайн и сервис"],
"source": "Демо-данные"
},
{
"id": "demo_28",
"name": "Челябинский институт путей сообщения",
"full_name": "Челябинский институт путей сообщения (филиал УрГУПС)",
"address": "ул. Жукова, 99, Челябинск",
"latitude": 55.1234,
"longitude": 61.3789,
"phones": ["+7 (351) 263-88-88"],
"categories": ["Институт путей сообщения", "Транспорт"],
"source": "Демо-данные"
},
{
"id": "demo_29",
"name": "Уральский социально-экономический institut",
"full_name": "ЧОУ ВО «Уральский социально-экономический институт»",
"address": "ул. Ленина, 77, Челябинск",
"latitude": 55.1545,
"longitude": 61.4278,
"phones": ["+7 (351) 200-33-33"],
"categories": ["Частный институт", "Социально-экономическое образование"],
"source": "Демо-данные"
},
{
"id": "demo_30",
"name": "Челябинский колледж индустрии красоты",
"full_name": "ЧОУ СПО «Челябинский колледж индустрии красоты»",
"address": "ул. Труда, 179, Челябинск",
"latitude": 55.1723,
"longitude": 61.3567,
"phones": ["+7 (351) 700-44-44"],
"categories": ["Колледж красоты", "Среднее специальное образование"],
"source": "Демо-данные"
}
]
return institutions
def save_demo_data():
"""Сохраняет демо-данные в JSON файл"""
institutions = get_demo_institutions()
data = {
'city': 'Челябинск',
'source': 'Демо-данные (среднее специальное и высшее образование)',
'count': len(institutions),
'institutions': institutions
}
filename = "educational_institutions_demo.json"
try:
with open(filename, 'w', encoding='utf-8') as f:
json.dump(data, f, ensure_ascii=False, indent=2)
print(f"Демо-данные сохранены в файл: {filename}")
print(f"Всего заведений: {len(institutions)}")
# Статистика по типам
categories_count = {}
for inst in institutions:
for category in inst.get('categories', []):
categories_count[category] = categories_count.get(category, 0) + 1
print("\nРаспределение по категориям:")
for category, count in sorted(categories_count.items(), key=lambda x: x[1], reverse=True):
print(f" {category}: {count}")
return filename
except Exception as e:
print(f"Ошибка при сохранении файла: {e}")
return None
if __name__ == "__main__":
print("Создание демо-данных заведений среднего специального и высшего образования")
print("="*75)
save_demo_data()