WildBerries Data Engineer Test Task

Запуск сервиса

.env:

DATABASE_URL=sqlite:///mfd_forum.db?check_same_thread=False
  • make parse - парсинг данных и загрузка в sqlite таблицу mfd_forum.db
    • данные уже загружены, запускать не нужно, но можно начать :)
  • make up - поднятие сервиса на fastapi
  • make docker - поднятие сервиса в docker-контейнере (если расскоментить, то можно поднять отдельно парсер)
  • make venv - Создание виртуального окружения и установка зависимостей
  • make format - запуск форматтеров кода
  • make test - проверка работоспособности тестов (--cov app: 97%)
  • make lint - запуск линтеров
  • make ci
    • проверка кода соответствию линтерам (flake8, pylint, mypy, black)
    • проверка прохода тестов по coverage threshold >=90%

API Reference

  • localhost:8000/docs - документация swagger

Scraped data

  • authors - таблица с авторами постов на сайте
  • topics - таблица с тредами
  • posts - таблица с информацией о постах

Посмотреть количество данных по каждой из тем статьи можно таким образом:

SELECT p.topic_id, t.topic_name, COUNT(p.topic_id) amount
FROM posts p
JOIN topics t on t.topic_id = p.topic_id
GROUP BY p.topic_id
ORDER BY 3 DESC;
topic_id topic_name amount
67408 Нефть, золото, фьючерсы 173229
69692 Фьючерсы Сбербанка 886
79157 ОПЦИОНЫ 669
88685 Фьюч доллар-рубль 564
67062 Фьючерс на индекс РТС (RI) 391
88015 Индекс S&P 500 384
71831 Иллюзия торговли нефтью,золотом,звёздами*** 327
60766 НЕФТЬ – наше все! 238
64254 Серебро – перспективы 217
63292 ЗОЛОТО 180
86377 Крестики нолики 97
65427 Рынок FORTS 81
88429 НЕФТЬ 74
115860 CNY/RUB 71
106029 Платина- перспективная инвестиция 69
69983 BRENT 65
64614 Опционы и фьючерсы на индекс РТС и акции Сбербанка, Газпрома 57
72115 Фьючерс доллар США / Украинская гривна Московской Биржи 49
105879 Коплю на Ferrari. Или как легко можно заработать денег. 42
104308 Brent -волновой анализ 42
79336 Риски потери капитала на любом рынке – это заблуждение ! 36
112849 спекулянтам 29
70267 С какого перепуга Платина стоит дешевле золота? 27
93095 Мой портфель (Universal 1) 25
101997 Сделки Ри, Си, BR, ED 22
98069 Мои сделки по интрадейной торговли BRENT 22
107399 Исповедь трейдера 20
68703 Чем заменить нефть? 20
78377 торговля фьючерсом Si доллар рубль 19
109898 На китайский юань CY 15
115529 EUR/USD 13
114161 Алгоритмический трейдинг 13
80560 Пока существуют рынки акций , контрактов – торговать на них можно без всякого РИСКА ! 13
72672 Всё про нефть , и не только.. 13
79293 Что будет с рублем 12
65205 Россия- если не нефть 11
111110 Объединение торговцев usd/rub фьючерса Si 10
95035 Gold & Oil OnLine 10
62466 Опционы Сбер-Кассы 10
113552 Возможно ли поймать первую свечу? 9
100381 Рупия в Московской бирже (фьючерс Индии у нас) 8
85498 НЕФТЬ. Уровни и логика движения. Ежедневный разбор. 8
108999 Natural Gas 7
94927 Silv Фьючерс на серебро Мос биржа 7
93130 Различия контрактов. 7
80169 Эксперимент, облигации и опционы, канал на Ютуб)) 7
107348 Сделки в минус 6
113581 рыночные заявки становятся лимитными 5
88540 Работа с деривативами Азии 5
115874 Поиск КонтрАгентов для адресных сделок (только закрытие поз) на фортс. 4
84630 Обеспечение под опционы 4
66229 SiZ2, вопрос по спросу и предложению 4
65534 фьюч на зерно GRK2 4
111493 Фьючерс ВТБ 3
98689 Комиссия за исполнение поставочных фьючерсов 3
87962 Подскажите, пожалуйста, по работе с фьючерсами, 3
87952 Новогоднее ралли 3
70658 Сравнение тарифов брокеров на ФОРТС 3
111141 Фьючерс на индекс Московской биржи 2
83797 Какова реальная (не спекулятивная) цена на физическую нефть? 2
72238 ETF 2
67630 О цене на нефть (или не стоит доверять безосновательным движениям). 2
115992 Помогите в споре с "брокером" по экспирации опционов 1
115989 Выход на мировые рынки из России 1
114032 Склееный ртс 1
112699 За последние 12 лет Медь дорожает по 50.5% Годовых 1
110424 как бысстро и просто выставлять алерты? 1
110419 просьба 1
107373 Сколь долговечно бумажное золото? 1
101067 Смело покупает Коллы 1
87476 СЫРЬЁ ПРОГНОЗЫ! биржы 1
83980 Торговля на LME (лондонская биржа металлов) 1
81961 ДИСЦИПЛИНА ВМЕСТО РИСКА 1
81960 brent в Китае 1
81164 «ПРОГНОЗ» 1
79354 Что может поднять цены на нефть? полуночные мысли на тему... 1
79160 На прицеле заседания Банка Японии. Покупаем пару USDJPY 1
72781 Почему не расширили Верхний Лимит на RIH6 ? 1
71483 Кто как кушает нефтяной пирог 1
70625 тики FoRTS 1