- PVSM.RU - https://www.pvsm.ru -
Всем привет. Сегодня я хочу рассказать о результате моей дипломной роботы, а именно описании программы, которая занимается геотегированием (привязкой к карте) новостных сообщений веб-сайта. Другими словами, программа позволяет автоматически отображать на карте теги (метки и кластеры) новостных сообщений, которые берутся с сайтов. Еще есть возможность просмотра простой ленты новостей.
Здесь [1] можно ознакомится с программой. Предупреждаю сразу, программа находиться в режиме тестирования, а так же текст интерфейса написан на украинском языке.
План
1. Входные данные.
2. База данных названий населенных пунктов.
3. Фильтрация текста.
4. Поиск названий населенных пунктов в новосном сообщении.
5. Геотегирование новостного сообщения и генерация карты.
6. Дополнительные возможности программы.
Парсинг сайтов
Для решения даной задачи, я выбрал два новостных сайта, а именно Цензор.НЕТ [2] и Zelv.RU [3]. Для сбора данных, к ним были написаны парсера. Извлеченная информация сохраняется в базе данных (All_Pars_BD), которая состоит из следующих таблиц: ссылка, время публикации, заголовок, текст новости, количество просмотров и источник (новостной сайт).
Это все реализовано в PARSER.py. Особенностю скрипта, есть проверка сообщений на наличие дубликатов относительно базы даных.
UA+WORLD
Кроме базы данных сообщений, нужно иметь базу данных названий населенных пунктов (UA+WORLD). За щет чего будет реализован поиск в сообщении названий населенных пунктов. Изначально в задаче был определен мониторинг новостей Украины. Из-за этого база данных примерно на половину состоит из украинских названий населенных пунктов. Другая половина, состоит из названий мировых крупных городов. На данный момент база состоит из 993 объектов. Кроме того в базе предусмотрено наличие столбца, в котором хранятся географические координаты назв населенных пунктов.
Фильтрация
Все мы знаем пределы нашего железа и не хотим лишний раз грузить его. Из-за этого делается фильтрация слов сообщения, а именно только те которые начинаются с большой буквы.
Поиск
Во время поиска в сообщении назв населенных пунктов, программа ищет это все в заголовке текста. Почему так? Был проведен маленький эксперимент, в котором было выбрано 100 новостных сообщений сайта Цензор.НЕТ, где происходил поиск наличия названия населенного пункта в элементах текста: заголовок, основной текст. Результаты представлены на следующей диаграмме.
Геотегирование и генерация карты
После удачной фильтрации и нахождения названий населенных пунктов в сообщении, следует завершающий этап — геотегирования. По сути, происходит замена текстовых данных (этих самых названий населенных пунктов) на географические координаты. После этого вся полученная информация отображается на карте (Google Map). Тут следует отметить удобность и простоту использования Gmap JS API. Особенно приятно было делать реализацию кластеризации (объединения) меток.
Новостная лента
Дополнительная возможность программы — наличие ленты новостей. Она позволяет оперативно просматривать сообщения, которые интересуют оператора и при двойном нажатии его просмотр на новостном сайте.
Заключение
Даная программа частично решает задачу автоматизации процесса обработки информации. За щет использования агрегирования и геотегирования новостных сообщений. Думаю это будет полезно в первую очередь для аналитиков. Вот и в принципе все. Буду ждать Вашей объективной оценки моей разработки.
Автор: бро
Источник [4]
Сайт-источник PVSM.RU: https://www.pvsm.ru
Путь до страницы источника: https://www.pvsm.ru/python/274425
Ссылки в тексте:
[1] Здесь: http://github.com/Miroslav972/GeoTagMesg
[2] Цензор.НЕТ: http://censor.net.ua
[3] Zelv.RU: http://zelv.ru/
[4] Источник: http://habrahabr.ru/sandbox/114192/
Нажмите здесь для печати.