#!/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()