Алексей Куличевский
Алексей Куличевский
  • Видео 70
  • Просмотров 308 762
Парсим админку Мегамаркета с помощью скрытых API
Курс «Python для Продактов и Маркетологов»: python.smysl.io/
СОДЕРЖАНИЕ
00:00 - Начало
00:21 - В прошлых сериях
01:08 - Админка Мегамаркета
03:31 - О внутренних API
04:41 - Находим внутренние API
09:37 - Получаем данные
20:53 - Получаем session_id
30:21 - Заключение
ОБО МНЕ
👋 Привет! Меня зовут Алексей. Я работаю в IT, занимал ключевые позиции в Групоне, Gett, Яндекс-Логистике и Osome. Я люблю преподавать, и у меня получается делать сложные вещи понятными. Хочу помогать людям не бояться нового и понимать, как технологии могут сделать нашу жизнь лучше.
Просмотров: 70 405

Видео

Анонс курса Python для продактов и маркетологов
Просмотров 1,2 тыс.3 месяца назад
Обновленный и улучшеный курс «Python для продактов, маркетологов и предпринимателей». Записываться тут: python.smysl.io/?GxF4QNIwc
Парсинг динамических сайтов | selenium python
Просмотров 7 тыс.3 месяца назад
Учимся автоматизировать браузер и парсить статистику из личного кабинета маркетплейса detmir.ru. 🔥 Курс по Python: python.smysl.io/ - новый набор 📢 Канал в Телеграме: t.me/kulichevskiy СОДЕРЖАНИЕ 00:00 - Начало 01:32 - Динамические сайты 06:26 - Устанавливаем Selenium 13:31 - Демо Selenium 17:55 - Парсим отчет ОБО МНЕ 👋 Привет! Меня зовут Алексей. Я работаю в IT, занимал ключевые позиции в Груп...
Автоматизируем Python скрипты с Github Actions | Python Github Actions
Просмотров 2,9 тыс.4 месяца назад
Видео о том, как можно автоматизировать запуск любого скрипта на удаленном сервере бесплатно и без необходимости вручную настраивать этот сервер. В качестве примера создаем скрипт, получающий данные о погоде и шлющий их в Телеграм. 💻 Код: github.com/kulichevskiy/super-duper-weather-bot 🔥 Курс по Python: python.smysl.io/ 📢 Канал в Телеграме: t.me/kulichevskiy СОДЕРЖАНИЕ 00:00 - Начало 01:04 - Пр...
Ozon API | Автоматизируем аналитику продвижения
Просмотров 3,6 тыс.5 месяцев назад
Собираем статистику продвижения с помощью Ozon Performance API 🔥 Курс по Python: python.smysl.io/ 📢 Канал в Телеграме: t.me/kulichevskiy СОДЕРЖАНИЕ 00:00 - Начало 01:16 - Подключаемся к API 10:27 - Получаем рекламные кампании 16:37 - Получаем статистику 20:05 - Скачиваем отчет 24:25 - Извлекаем данные ОБО МНЕ 👋 Привет! Меня зовут Алексей. Я работаю в IT, занимал ключевые позиции в Групоне, Gett...
Выгружаем рекламную статистику из АПИ Вайлдберриз | Wildberries API Python
Просмотров 4,6 тыс.5 месяцев назад
🔥 Курс по Python: python.smysl.io/ 📢 Канал в Телеграме: t.me/kulichevskiy СОДЕРЖАНИЕ 00:00 - Начало 00:26 - Готовимся к работе 03:07 - Подключаемся к API 08:02 - Получаем рекламные кампании 15:14 - Выгружаем статистику 21:27 - Обрабатываем ответ API 32:20 - Выгружаем статистику по ключевым словам ОБО МНЕ 👋 Привет! Меня зовут Алексей. Я работаю в IT, занимал ключевые позиции в Групоне, Gett, Янд...
Автоматизируем Python скрипты с Cron | Часть 3 | Python Cron
Просмотров 1,6 тыс.6 месяцев назад
↩️ Прошлая серия: ruclips.net/video/RmEsC2T8dwE/видео.html ↩️ Первая серия: ruclips.net/video/fgFWo0sDApA/видео.html 🔥 Курс по Python: python.smysl.io/ 📢 Канал в Телеграме: t.me/kulichevskiy 🔗 Автоматизация скриптов на Windows: ruclips.net/video/4n2fC97MNac/видео.htmlfeature=shared СОДЕРЖАНИЕ 00:00 - Начало 00:58 - Что такое Cron 03:41 - Настраиваем расписание 08:19 - Настраиваем логирование 12...
Python и Google Sheets API: Загружаем данные | Часть 2 | Google Sheets API Python
Просмотров 4,7 тыс.6 месяцев назад
↩️ Прошлая серия: ruclips.net/video/fgFWo0sDApA/видео.html 🔥 Курс по Python: python.smysl.io/ 📢 Канал в Телеграме: t.me/kulichevskiy СОДЕРЖАНИЕ 00:00 - Начало 00:30 - Что такое API 03:08 - библиотека gspread 04:13 - получаем доступ к API 08:30 - создаем сервисный аккаунт 14:11 - загружаем данные в Google-таблицу ОБО МНЕ 👋 Привет! Меня зовут Алексей. Я работаю в IT, занимал ключевые позиции в Гр...
Парсим сайты конкурентов с помощью Python | Часть 1 | Web Scraping Python
Просмотров 6 тыс.6 месяцев назад
🔥 Курс по Python: python.smysl.io/ 🎬 Плейлист про настройку рабочей среды: Настройка рабочей среды для разработки на Python ruclips.net/p/PL2PN33KbuWfz6o9TgDaVvAs7w9JaRD6x0 СОДЕРЖАНИЕ 00:00 - Начало 00:54 - Как работает парсинг 04:51 - Библиотека requests 08:15 - HTML-тэги 14:17 - Библиотека beautifulsoup 23:55 - Обработка пагинации 33:21 - Ограничения ОБО МНЕ 👋 Привет! Меня зовут Алексей. Я ра...
Урок 29. Как понять, какие метрики измерять | Снижение уровня абстракции | Курс по Google Sheets
Просмотров 1 тыс.6 месяцев назад
В платной версии курса материал лекции можно отработать на заданиях → sheets.smysl.io/ 🎬 ВЕСЬ ПЛЕЙЛИСТ ruclips.net/p/PL2PN33KbuWfwAjsZk27fASuJlqZdMqIMZ МОИ ПРОДУКТЫ 📢 Канал в Телеграме: t.me/kulichevskiy 👩‍💻 Курс по Python для маркетологов: python.smysl.io/ 👨🏻‍💻 Курс по SQL для маркетологов: sql.smysl.io/ ОБО МНЕ 👋 Привет! Меня зовут Алексей. Я работаю в IT, занимал ключевые позиции в Групоне, ...
Урок 28. Путь пользователя, конверсии и воронки
Просмотров 7466 месяцев назад
В платной версии курса материал лекции можно отработать на заданиях → sheets.smysl.io/ 🎬 ВЕСЬ ПЛЕЙЛИСТ ruclips.net/p/PL2PN33KbuWfwAjsZk27fASuJlqZdMqIMZ МОИ ПРОДУКТЫ 📢 Канал в Телеграме: t.me/kulichevskiy 👩‍💻 Курс по Python для маркетологов: python.smysl.io/ 👨🏻‍💻 Курс по SQL для маркетологов: sql.smysl.io/ ОБО МНЕ 👋 Привет! Меня зовут Алексей. Я работаю в IT, занимал ключевые позиции в Групоне, ...
Урок 27. Бизнес-метрики
Просмотров 1,3 тыс.6 месяцев назад
В платной версии курса материал лекции можно отработать на заданиях → sheets.smysl.io/ 🎬 ВЕСЬ ПЛЕЙЛИСТ ruclips.net/p/PL2PN33KbuWfwAjsZk27fASuJlqZdMqIMZ МОИ ПРОДУКТЫ 📢 Канал в Телеграме: t.me/kulichevskiy 👩‍💻 Курс по Python для маркетологов: python.smysl.io/ 👨🏻‍💻 Курс по SQL для маркетологов: sql.smysl.io/ ОБО МНЕ 👋 Привет! Меня зовут Алексей. Я работаю в IT, занимал ключевые позиции в Групоне, ...
Урок 26. Создаем собственные меню с помощью Apps Script | Курс по Google Sheets
Просмотров 1,3 тыс.7 месяцев назад
В платной версии курса материал лекции можно отработать на заданиях → sheets.smysl.io/ 🎬 ВЕСЬ ПЛЕЙЛИСТ ruclips.net/p/PL2PN33KbuWfwAjsZk27fASuJlqZdMqIMZ МОИ ПРОДУКТЫ 📢 Канал в Телеграме: t.me/kulichevskiy 👩‍💻 Курс по Python для маркетологов: python.smysl.io/ 👨🏻‍💻 Курс по SQL для маркетологов: sql.smysl.io/ ОБО МНЕ 👋 Привет! Меня зовут Алексей. Я работаю в IT, занимал ключевые позиции в Групоне, ...
Урок 25. Обрабатываем массивы данных с помощью Apps Script | Курс по Google Sheets
Просмотров 1 тыс.7 месяцев назад
В платной версии курса материал лекции можно отработать на заданиях → sheets.smysl.io/ 🎬 ВЕСЬ ПЛЕЙЛИСТ ruclips.net/p/PL2PN33KbuWfwAjsZk27fASuJlqZdMqIMZ МОИ ПРОДУКТЫ 📢 Канал в Телеграме: t.me/kulichevskiy 👩‍💻 Курс по Python для маркетологов: python.smysl.io/ 👨🏻‍💻 Курс по SQL для маркетологов: sql.smysl.io/ ОБО МНЕ 👋 Привет! Меня зовут Алексей. Я работаю в IT, занимал ключевые позиции в Групоне, ...
Урок 24. Создаем собственные формулы с помощью Apps Script | Курс по Google Sheets
Просмотров 2,1 тыс.7 месяцев назад
В платной версии курса материал лекции можно отработать на заданиях → sheets.smysl.io/ 🎬 ВЕСЬ ПЛЕЙЛИСТ ruclips.net/p/PL2PN33KbuWfwAjsZk27fASuJlqZdMqIMZ МОИ ПРОДУКТЫ 📢 Канал в Телеграме: t.me/kulichevskiy 👩‍💻 Курс по Python для маркетологов: python.smysl.io/ 👨🏻‍💻 Курс по SQL для маркетологов: sql.smysl.io/ ОБО МНЕ 👋 Привет! Меня зовут Алексей. Я работаю в IT, занимал ключевые позиции в Групоне, ...
Урок 23. Макросы | Курс по Google Sheets
Просмотров 1,4 тыс.7 месяцев назад
Урок 23. Макросы | Курс по Google Sheets
Урок 22. План-факт | Дешборды в Google Sheets
Просмотров 8817 месяцев назад
Урок 22. План-факт | Дешборды в Google Sheets
Урок 21. Слой представления | Дешборды в Google Sheets
Просмотров 6897 месяцев назад
Урок 21. Слой представления | Дешборды в Google Sheets
Урок 20. Архитектура дешборда | Дешборды в Google Sheets
Просмотров 1,1 тыс.7 месяцев назад
Урок 20. Архитектура дешборда | Дешборды в Google Sheets
Урок 19. Дизайн дешбордов в Google Sheets
Просмотров 1,5 тыс.7 месяцев назад
Урок 19. Дизайн дешбордов в Google Sheets
Урок 18. Создание дешбордов. Принцип и алгоритм
Просмотров 1,1 тыс.8 месяцев назад
Урок 18. Создание дешбордов. Принцип и алгоритм
Урок 17. Моделирование юнит-экономики, часть 2 | Курс по Google Sheets
Просмотров 5118 месяцев назад
Урок 17. Моделирование юнит-экономики, часть 2 | Курс по Google Sheets
Урок 16. Моделирование юнит-экономики, часть 1 | Курс по Google Sheets
Просмотров 8738 месяцев назад
Урок 16. Моделирование юнит-экономики, часть 1 | Курс по Google Sheets
Урок 15. Юнит-экономика в Google Sheets, практика
Просмотров 9778 месяцев назад
Урок 15. Юнит-экономика в Google Sheets, практика
Урок 14. Юнит-экономика в Google Sheets, теория
Просмотров 2,2 тыс.8 месяцев назад
Урок 14. Юнит-экономика в Google Sheets, теория
Урок 13. Когортный анализ в Google Sheets. Применение в других областях
Просмотров 8318 месяцев назад
Урок 13. Когортный анализ в Google Sheets. Применение в других областях
Урок 12. Когортный анализ в Google Sheets, применение в маркетинге
Просмотров 1,5 тыс.8 месяцев назад
Урок 12. Когортный анализ в Google Sheets, применение в маркетинге
Урок 11. Когортный анализ в Google Sheets, практика
Просмотров 2 тыс.8 месяцев назад
Урок 11. Когортный анализ в Google Sheets, практика
Урок 10. Когортный анализ в Google Sheets, теория
Просмотров 2,8 тыс.9 месяцев назад
Урок 10. Когортный анализ в Google Sheets, теория
Урок 9. Сквозная аналитика в Google Sheets, практика
Просмотров 1,9 тыс.9 месяцев назад
Урок 9. Сквозная аналитика в Google Sheets, практика

Комментарии

  • @songstextsedmuhamed7778
    @songstextsedmuhamed7778 11 часов назад

    Подскажите, как сделать активными ссылки в google таблицe?

    • @kulichevskiy
      @kulichevskiy 9 часов назад

      Там есть кнопочка «Вставить ссылку»

  • @margooo_eng
    @margooo_eng День назад

    Спасибо за уроки! Вас так приятно смотреть 🥰

  • @kirilldubrobsky6320
    @kirilldubrobsky6320 2 дня назад

    Большое спасибо за материал! Я купил курс и появились вопросы по тесту к этому уроку. Но не могу найти ТГ канал на этот случай. Алексей, подскажите, пожалуйста, как мне найти доступ к нему?

    • @kulichevskiy
      @kulichevskiy День назад

      Привет! По идее, после покупки должен был прийти имейл с явками и паролями. Напишите мне на ak@smysl.io, я проверю.

  • @nictorin15
    @nictorin15 2 дня назад

    можно выделить колонку и строку и нажать fn+F4 на макбуке чтобы проставился доллар автоматически

  • @Arthur_1907
    @Arthur_1907 2 дня назад

    Куплю гараж в Париже

  • @Arthur_1907
    @Arthur_1907 3 дня назад

    Майор Гром спасибо тебе за таблицы и за безопасность города ))

  • @Chinaoptretail
    @Chinaoptretail 4 дня назад

    Как называется среда в который вы пишите ?

  • @user-ro7fu4fj9y
    @user-ro7fu4fj9y 4 дня назад

    @kulichevskiy разберите пожалуйста получение отзывов из кабинета ozon saller. сам озон в апи такой функции не имеет, а синтезировать результат для этого случая по вашим видео не получатся.

  • @anonsd5521
    @anonsd5521 5 дней назад

    А смысл всех этих действий? Это самые обычные python запросы на сервер, мы просто скопировали его с нетворка, люди которые пишут фронт на пайтоне не получили совершенно никакой новой инфы.

  • @kifitim
    @kifitim 5 дней назад

    На послкдней минуте как конверсия стала 24%. Должна же 20.4

  • @masterchaosa
    @masterchaosa 7 дней назад

    что за бред. нет возможности скопировать скрипт, спасибо конечно, но бред

  • @Lifenity
    @Lifenity 12 дней назад

    Хех. Спасибо, подписался.

  • @Lifenity
    @Lifenity 12 дней назад

    Да уж..... Я прекратил свою десятилетнюю деятельность веб-мастера в 19-ом году. Даже идеи "собирать структуру сайта на лету" не существовало. По крайней мере, ни от одного знакомого веб-мастера не слышал, ни на одном форуме об этом не читал. ОБН: Хах, ну да, как можно было забыть о JSON и технологии Ajax.... ну или схожей с ней. МегаМаркет подгружает только часть сайта. Для обычных пользователей HTML структура находится внутри документа, а не через БД или другие способы. Короче, не на лету. И да, у них есть "мусор" в коде..... я в своей работе никогда подобного не допускал.

  • @R2D2022
    @R2D2022 12 дней назад

    очень интересное и познаватальное видео, спасибо. А подскажите пожалуйста, как вы сделали, чтобы выполнять код не весь а в этих блоках пошагово?

    • @egornekr
      @egornekr 9 дней назад

      тут создается не файл .py , а jupiter notebook. Такое можно быстро в google colab делать

    • @R2D2022
      @R2D2022 9 дней назад

      @@egornekr понял, спасибо

  • @timapigolev1640
    @timapigolev1640 12 дней назад

    Доктор кокс?

  • @kpdpok
    @kpdpok 12 дней назад

    Спасибо за видео!! Классный контенет. Я вроде это уже знал и постоянно деплою ботов в связке с автоматизацией гитхаба и докер. Но делаю это в закрытом репозитории тк не знал, как это сделать без пуша .env. Теперь понял. Очень полезно было посмотреть как работать с документацией. И главная фича, которую узнал это, что можно запускать код по crontab. Это же и свой VPS тогда не нужен для многих задач.

  • @user-qv7ri5fg2d
    @user-qv7ri5fg2d 13 дней назад

    Лучшие видео по обучению!

  • @user-he2xv6yr2q
    @user-he2xv6yr2q 14 дней назад

    Здравствуйте Алексей! У вас отлично получается объяснять так, что многое становится понятным сразу. Это редкой качество. Можете объяснить как в макросе гугл таблиц сделать контекстную замену? Ручками все получается, а записав ту последовательность в макрос - не работает...

  • @milash8861
    @milash8861 15 дней назад

    Спасибо!

  • @Sharikov_stepan
    @Sharikov_stepan 17 дней назад

    Класс 👍

  • @Antropov_AI
    @Antropov_AI 20 дней назад

    Благодарю! Просто красавчик!

  • @_PNN_
    @_PNN_ 20 дней назад

    классная история про 31.12.1899. Спасибо

  • @demimurych1
    @demimurych1 22 дня назад

    А еще, можно сначала освоить доступный инструментарий. В котором внезапно, есть запись последовательности действий, которые потом можно использовать либо как готовый сценарий для папитира, либо как лог который намного проще исследовать.

  • @alexsmitt2140
    @alexsmitt2140 22 дня назад

    вопросик. В документации же написано: Selenium Manager - это новый инструмент, который помогает создать рабочую среду для запуска Selenium « из коробки». Для чего вы ставите отдельно драйвер браузера и заморачиваетесь с версиями?

  • @alexfx7021
    @alexfx7021 22 дня назад

    Привет, отлично! Если такое на gitlab? Или нужна просто кнопка, что бы запустить файл из репозитория gitlab? естественно не скачивая его...

  • @kotzima7293
    @kotzima7293 22 дня назад

    Я понял как спарсить динамический сайт через добавление chromedriver но как это все засунуть в телеграмм бота и захостить на любом хостинге? Дайте материалы или сделайте видео

    • @CyberVampss
      @CyberVampss 6 дней назад

      Хромдрайвер под линунс, в коде программы делаешь условие, если винда, запускать екзешник, если линукс или сервера, то линуксовский драйвер. Бота запихиваешь прямо в код, токен + вывод сообщений на свой чат айди.

  • @user-cp7qw6ox6b
    @user-cp7qw6ox6b 23 дня назад

    почему не на js ?

  • @cockroach_eater3
    @cockroach_eater3 24 дня назад

    Интересно нафига бек выдает куки, если при запросе игнорирует их отсутствие)

  • @germanmariot34
    @germanmariot34 24 дня назад

    Ого, как же круто знать JS. 😮

  • @user-sj3rg7ns5j
    @user-sj3rg7ns5j 24 дня назад

    Я вцелом понимал как это работает, но была проблема с пониманием откуда брать "токены" или "сессии", а теперь вижу что все работает проще пареной репы, большое спасибо за информацию!!!

  • @EarnDevison
    @EarnDevison 25 дней назад

    давай посложнее

  • @t1monya
    @t1monya 25 дней назад

    а можно ли наоборот отправлять эти данные ? Например в битрикс24

  • @VictorumDev
    @VictorumDev 27 дней назад

    Привет, в network CTRL+F и вбиваешь тример ногтей, он найдет запросы ,где в респонсе было это упоминание и не нужно все просматривать

  • @ais9872
    @ais9872 29 дней назад

    боже не останавливайся, ты такой крутой

  • @ИгорьДобровольский-й1о

    Cloudflare

  • @ИгорьДобровольский-й1о

    а если у сайта защита cloudfare типо того то деать ? как это обойти

  • @notproudman
    @notproudman Месяц назад

    Вперше на вашому каналі, дуже круті відео, дуже сильно допомогли! Дякую за якісний контент!

  • @ezhov_igor
    @ezhov_igor Месяц назад

    какое чудо, что я тебя нашел! Спасибо тебе огромное. Я только начинаю в этом ковыряться, а ты просто находка для меня!

  • @user-jd8be2mq9w
    @user-jd8be2mq9w Месяц назад

    Алексей привет! Очень интересное видео, спасибо) Сам так иногда делаю. Я не большой спец в Пайтоне и работе со скрытыми АПИ, по этому есть вопрос -- нет ли опыта взаимодействия таким образом с Яндекс Маркетом? Нужно доставать отзывы и вопросы по товарам и отвечать на них. Стандартный апи не имеет методов ответа. Конкретно с Маркетом есть проблема с получением Sk -- некий секрет кей, который передается с каждым запросом на маркет (headers). Метода получения этого ключа напрямую нет. Есть skid -- вероятно айдишник, который на беке в яндексе достает секрет кей. Я пока не смог победить)

  • @GraF4444
    @GraF4444 Месяц назад

    Доброго времени суток! Пара замечаний, возможно автору будет интересно:) 1 Для того чтобы не бегать по каждому запросу во вкладке Network, можно воспользоваться поиском (cmd+f), который ищет вхождение текста по всем запросам (загаловкам, запросам, ответам) 1.1 У Вас уже стояла настройка, но лучше думаю для людей оговорить явно, что чтобы отображались именно ответы/запросы к серверу, нужно выбрать вкладку Fetch/XHR 2 Чтобы не копировать поотдельности хедеры и данные запроса, можно нажать на зпрос правой клавишей мыши, выбрать копировать, и копировать как curl или как fetch запрос и тп 2.1 Я находил оналйн сервисы, которые из curl могу сгенерировать запрос на любом языке, в том числе и на питоне, если запросов несколько, гораздо удобнее делать так, может сэкономить время:) Надеюсь было полезно:)

    • @Vladimir_F609
      @Vladimir_F609 3 дня назад

      Спасибо большое за инфу!!!

  • @DreamingDolphing
    @DreamingDolphing Месяц назад

    Интересно, а почему CORS политика не сработала? По идее API на бэкенде должно принимать запросы исключительно от собственного фронтенда и тогда ваши эксперименты не удались бы.

  • @ivanlushin3962
    @ivanlushin3962 Месяц назад

    Вау, это что? Не надо теперь искать индусов и разбирать их ломаный английский. Превосходная подача, даже моя мама поймет что делать. Все бы так объясняли как ты. Респект, подписка 👍🏼

  • @qAntBcn
    @qAntBcn Месяц назад

    Супер подача, автор молодец все коротко и в то же время ясно, без воды. Если весь курс будет сделан точно так же, то это бомба ) Аш питон захотелось освоить ) Смотрел просто ради интереса, знаком с веб программированием, но не с питон. Хотелось бы посмотреть видео, где есть что то действительно сложное для понимание, но простым языком

  • @user-ke6qv8sg3q
    @user-ke6qv8sg3q Месяц назад

    фигасе, есть и такое в гугле.

  • @liker12345ffff
    @liker12345ffff Месяц назад

    Это очень простой пример. Вот есть юла, например, где требуется постоянно обновлять токен и кукисы при запросе.

  • @anarhisttttt
    @anarhisttttt Месяц назад

    Спасибо большое за столь полезный материал! Смотрел вместе с другом, после потренировались еще сами на различных сайтах, регулярки теперь от зубов отлетают)) (на этом этапе конечно же)

  • @user-ke6qv8sg3q
    @user-ke6qv8sg3q Месяц назад

    мдаа.. Алексей записал это видео на маке за 32 минуты, а я потратил в первый раз часов 6 на эту жесть на винде. Ошибка на ошибке ошибкой погоняет, но я всех раскидал и победил!!! Двигался по шагам из видео. Документация майкрософт всем в помощь. Спасибо автору за видос

  • @pip_install7496
    @pip_install7496 Месяц назад

    Вот и минусы использования не официальной документации. Они могут попросту не обновляться и в итоге ты получаешь не актуальную информацию

  • @Wildberries-km5ln
    @Wildberries-km5ln Месяц назад

    а можно сначала в постмене все сделать потом идти в гугл шитс?

  • @Katar1x
    @Katar1x Месяц назад

    *Инфа, конечно, для самых маленьких и начинающих, но подано неплохо*