Ситуация следующая. На сайте порядка 18000 статей из электронных газет и журналов.
Яндекс постоянно "совершенствуется" и в какой-то момент в индексе от 20000 страниц осталось меньше 1000.
Для людей которые держат сайт в закладках и постоянно туда ходят это никак не сказалось, поскольку на сайте реализован свой поиск.
Остальные же пользователи попадают на сайт через поисковики, в том числе злосчастный Яндекс. Ну а теперь уже попадают сильно реже.
На данный момент статьи отображаются для пользователя и поисковика почти в первозданном виде.
То есть plain text с железным форматированием и переносами слов, без какой-либо семантической разметки свойственной гипертексту.
А по клику в нужную иконку еще с оригинальной раскраской.
Очень может быть что Яндекс такие тексты воспринимает как мусорные (гугл пока еще нет).
Так-же тексты пестрят псевдографикой, и заменой русских буквы на английский с таким же начертанием.
u = и, p = р, m = м и т.д.
С заменой я уже начал бороться. В первую очередь это важно для локального поиска. Так-как sphinx (поисковый движок)
не умеет синонимизировать разные буквы.
Вообще проблема с буквами в массовом масштабе появилась когда все простые тексты были выдраны
и остались те что как-то хитро лежат в памяти, или имеют сложный формат раскраски или содержат множество иллюстраций.
Для таких текстов был создан ZX Fine Reader. Статья скидывается в виде пачки scr, а софт переводит их в текст.
В общем я решил все статьи отформатировать в HTML вид. И вот тут встает вопрос - а как это сделать?
Не в плане кода, а алгоритмически.
Допустим распознать начало и конец абзаца не сложно.
Псевдографика часто используется для украшательства заголовков статей, но так-же иногда ей рисуются электрические схемы и
и какая-то другая полезная информация. Как тут быть?
Попутно можно английские слова встречающиеся в русском тексте выделять жирным. Так текст станет более читабельным. Ведь английским обычно пищутся названия, имена, команды и т.п. Но тут тоже нужен умный подход. Ведь бывают статьи на английском.
Или абзацы. А еще выделять можно слова в кавычках. А сами кавычки заменять с программерских на типографские.
По хорошему нужно распозновать и списки. Это текст который имеет перечисления 1) ... 2) ... 3) его можно заменять на
соответсвующие теги: <ul><li></li></ul>
Не забываем что в статьях встречаются картинки. И если с фулскрин картинками все просто, то что делать с теми которые обтекаются текстом не понятно.
Но самое сложное это исходники. Статей по программированию очень много.
И как найти детектировать в статье куски код, мне пока совершенно не понятно.
В общем, буду рад любым мыслям и идеям на тему сабжа.
В первую очередь конечно хочется сделать сайт красивым и удобным для людей. А plain текст даже без проблем с поисковиком очень ограничивает возможности для маневров.
Вот несколько рабочих ситуаций, которые предстоит решить: