Skip to content

kdrake/reader

Folders and files

NameName
Last commit message
Last commit date

Latest commit

 

History

1 Commit
 
 
 
 
 
 
 
 
 
 
 
 
 
 

Repository files navigation

reader

Получает из веб-страницы только полезную информацию, отбросив весь «мусор» (навигацию, рекламу и тд):

  1. Получаем контент по адресу веб страницы, переданному в качестве параметра командной строки.

  2. Вытаскиваем из контента только полезную информацию, отбросив весь «мусор» (навигацию, рекламу и тд):

    Будем основываться на том принципе, что весь важный контент сосредоточен либо в нескольких последовательных тегах, либо в одном теге содержащем много текста, либо значение атрибутов class или id элемента имеют значение, предположительно означающее место сосредоточение контента.

    Т.о. мы будем давать оценку родительскому элементу тегов с контентом.

    В результате мы сформируем словарь DOM элементов каждому из которых будет проставлена оценка, в соответствие со значением атрибутов элемента, именем элемента, плотности ссылок в элементе и количеством частей текста разделенных запятыми в элементе.

    Выберем из словаря элемент с наибольшим весом.

    После выбора элемента возможны ситуации содержания в дочерних узлах элемента "плохих" элементов, которые не содержат "полезной" информации. Постараемся очистить такие элементы на основе веса элемента и плотности ссылок в элементе.

  3. Форматируем контент для максимально комфортного чтения в любом текстовом редакторе.

  4. Сохраняем форматированный контент по принципу: http://lenta.ru/news/2013/03/dtp/index.html => [CUR_DIR]/lenta.ru/news/2013/03/dtp/index.txt

  5. Результаты храняться в директории results

Releases

No releases published

Packages

No packages published

Languages