- Данные получены через VK-API с группы Skillbox в vk.com.
- Временной период - конец сентября 2018 - середина марта 2020 (1500 постов).
- Данные сохраняются в MongoDB.
- Данные для анализа получаются из базы данных MongoDB, путём построения запросов через библиотеку
pymongo
. - Для работы с БД через GUI можно использовать Robo 3T: the hobbyist GUI
- Для работы со словами будем использовать библиотеку pymorphy2
- Анализ сделан в блокноте Юпитера.
- Часть кода (взаимоействие с API, БД и т.д.) вынесено в отдельный python файл
extrans.py
- Часть кода покрыта тестами, они также приведены в
extrans.py
Для работы с VK API - нужен ключ, который можно получить на странице разработчика в VK.
Для развертывания MongoDB используется официальный образ Docker
# Получаем Image
docker pull mongo
# Запускаем контейнер:
# название контейнера: my_mongodb
# соединение порта хостовой машины и контейнера: -p 27888:27017
# имя_пользователя: -e MONGO_INITDB_ROOT_USERNAME=koslayn
# пароль: -e MONGO_INITDB_ROOT_PASSWORD=skillbox-test-vk
# запускаем Image в виде демона: -d mongo
docker run --name my_mongodb -p 27017:27017 -e MONGO_INITDB_ROOT_USERNAME=koslayn -e MONGO_INITDB_ROOT_PASSWORD=skillbox-test-vk -d mongo
❗ не используйте такой формат для развертывания в prod, система практически не защищена, установка простого пароля и вход под admin не безопасна.
- Кроме локального размещения базы данных, можно организовать хранение данных в облачных сервисах, например использовать VPS в Google cloud (бесплатное обслуживание - https://cloud.google.com/free)
- Установлена Ubuntu + Docker
docker run
- В фаерволе нужно сделать правила для пропуска входящего\исходящего трафика порт 27017.