Results of the workshop "Facebook of the Past" in HSE (information extraction, creation of databases of correspondence members, creation of social graphs)
Python HTML
Switch branches/tags
Nothing to show
Clone or download
Fetching latest commit…
Cannot retrieve the latest commit at this time.
Permalink
Failed to load latest commit information.
templates
README.md
drawing_graphs.py
try_html.py

README.md

Проект "Фейсбук прошлого" (Facebook of the Past) посвящён автоматической обработке корреспонденции, извлечению фактов об участниках переписки и последующему созданию базы данных и графов связей между ними.

  1. drawing_graphs.py

назначение: создание изображений графов на основе базы данных

input: файл с данными по письмам; формат - csv; кодировка - utf-8 ! обязательно соблюдать установленную последовательность колонок ! output: изображение графа; формат - png

необходимо установить: networkx, matplotlib

functions: build_base_for_graphs(database) - получает на вход файл в формате csv, возвращает частотный словарь всех персоналий в формате {имя:{адресат:количество писем}} build_graph_for_person(database, info) - получает на вход базу данных в формате csv и имя одного человека, возвращает граф со всеми связями этого человека (сохраняет в "templates/") build_graph_for_socium(database) - получает на вход базу данных в формате csv, возвращает граф со связями всего сообщества, описанного во входном файле (сохраняет в "templates/")

описание графов:

  • ориентированный мультиграф со взвешенными рёбрами
  • размер узла = количество людей, с которыми связан искомый человек / 0.01
  • ориентированность обозначается синими концами на рёбрах при соответствии "А пишет В" = "А->В"
  • вес ребра = количество писем между двумя людьми
  1. try_html.py

назначение: drawing_graphs.py с поддержкой во flask'е, демо-реализация сервиса для построения графов

необходимо установить: networkx, matplotlib, flask

functions: build_base_for_graphs(database) build_graph_for_person(database, info) build_graph_for_socium(database) index() - открытие страницы для загрузки файлов с базой данных search() - открытие страницы для выбора типа графа для построения, ввода имени человека в случае центричного графа, вывода результатов