Вход

Просмотр полной версии : Типограф для ZXPRESS.RU



newart
24.01.2017, 04:45
Ситуация следующая. На сайте порядка 18000 статей из электронных газет и журналов.

Яндекс постоянно "совершенствуется" и в какой-то момент в индексе от 20000 страниц осталось меньше 1000.
Для людей которые держат сайт в закладках и постоянно туда ходят это никак не сказалось, поскольку на сайте реализован свой поиск.
Остальные же пользователи попадают на сайт через поисковики, в том числе злосчастный Яндекс. Ну а теперь уже попадают сильно реже.

https://dl.dropboxusercontent.com/u/6439155/1aAZ1O.png

На данный момент статьи отображаются для пользователя и поисковика почти в первозданном виде.
То есть plain text с железным форматированием и переносами слов, без какой-либо семантической разметки свойственной гипертексту.
А по клику в нужную иконку еще с оригинальной раскраской.

Очень может быть что Яндекс такие тексты воспринимает как мусорные (гугл пока еще нет).

Так-же тексты пестрят псевдографикой, и заменой русских буквы на английский с таким же начертанием.
u = и, p = р, m = м и т.д.

С заменой я уже начал бороться. В первую очередь это важно для локального поиска. Так-как sphinx (поисковый движок)
не умеет синонимизировать разные буквы.

Вообще проблема с буквами в массовом масштабе появилась когда все простые тексты были выдраны
и остались те что как-то хитро лежат в памяти, или имеют сложный формат раскраски или содержат множество иллюстраций.
Для таких текстов был создан ZX Fine Reader. Статья скидывается в виде пачки scr, а софт переводит их в текст.

В общем я решил все статьи отформатировать в HTML вид. И вот тут встает вопрос - а как это сделать?
Не в плане кода, а алгоритмически.

Допустим распознать начало и конец абзаца не сложно.

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

Попутно можно английские слова встречающиеся в русском тексте выделять жирным. Так текст станет более читабельным. Ведь английским обычно пищутся названия, имена, команды и т.п. Но тут тоже нужен умный подход. Ведь бывают статьи на английском.
Или абзацы. А еще выделять можно слова в кавычках. А сами кавычки заменять с программерских на типографские.

По хорошему нужно распозновать и списки. Это текст который имеет перечисления 1) ... 2) ... 3) его можно заменять на
соответсвующие теги: <ul><li></li></ul>

Не забываем что в статьях встречаются картинки. И если с фулскрин картинками все просто, то что делать с теми которые обтекаются текстом не понятно.

Но самое сложное это исходники. Статей по программированию очень много.

И как найти детектировать в статье куски код, мне пока совершенно не понятно.



В общем, буду рад любым мыслям и идеям на тему сабжа.

В первую очередь конечно хочется сделать сайт красивым и удобным для людей. А plain текст даже без проблем с поисковиком очень ограничивает возможности для маневров.

Вот несколько рабочих ситуаций, которые предстоит решить:

https://dl.dropboxusercontent.com/u/6439155/zxp1.png

https://dl.dropboxusercontent.com/u/6439155/zxp2.png

https://dl.dropboxusercontent.com/u/6439155/zxp3.png

https://dl.dropboxusercontent.com/u/6439155/zxp4.png

https://dl.dropboxusercontent.com/u/6439155/zxp5.png

https://dl.dropboxusercontent.com/u/6439155/zxp6.png

https://dl.dropboxusercontent.com/u/6439155/zxp7.png

newart
24.01.2017, 16:49
Тут советуют использовать для разметки markdown синтаксис.

Black Cat / Era CG
27.01.2017, 09:54
По-моему, единственный действенный способ, это разбирать каждую статью вручную. По-моему, markdown, тут ничем не поможет. Работа, конечно, титаническая по объему. При этом было бы классно вернуть в текст иллюстрации. Обтекание легко реализуется с помощью css. Только все это придется опять выдирать, схемы и псевдографические рисунки (графики, например) рисовать картинками, таблицы превращать в таблицы... При этом имхо кнопочку с просмотром в виде оригинала необходимо оставить. Так же было бы очень неплохо, если бы кодововые куски привести к виду http://era-cg.su/examp_z80.html Делается это тоже все не сложно. Единственная сложность имхо в объеме.

newart
27.01.2017, 16:34
По-моему, единственный действенный способ, это разбирать каждую статью вручную. По-моему, markdown, тут ничем не поможет. Работа, конечно, титаническая по объему. При этом было бы классно вернуть в текст иллюстрации. Обтекание легко реализуется с помощью css. Только все это придется опять выдирать, схемы и псевдографические рисунки (графики, например) рисовать картинками, таблицы превращать в таблицы... При этом имхо кнопочку с просмотром в виде оригинала необходимо оставить. Так же было бы очень неплохо, если бы кодововые куски привести к виду http://era-cg.su/examp_z80.html Делается это тоже все не сложно. Единственная сложность имхо в объеме.
Дык.

Проекту ровно 7 лет. 7*365 = 2555 , 18000 / 2555 = 7 статей нужно было делать каждый день в течении всех этих лет )

Black Cat / Era CG
27.01.2017, 17:15
Проекту ровно 7 лет. 7*365 = 2555 , 18000 / 2555 = 7 статей нужно было делать каждый день в течении всех этих лет )
Дааа. Сурово

- - - Добавлено - - -

В 1 лицо в ручном режиме точно не вывезти...

morozov
05.05.2019, 18:35
Сам натыкался на неточности форматирования блоков кода из электронных журналов. Думаю, без человеческого вмешательства не обойтись. Что если выложить тексты на GitHub (всё-таки луяше было бы в markdown, а не в HTML) и принимать пулреквесты?