Форум программистов, компьютерный форум CyberForum.ru

Библиотека для работы с русскими текстами! - C++

Восстановить пароль Регистрация
 
ninja2
 Аватар для ninja2
230 / 186 / 7
Регистрация: 26.09.2012
Сообщений: 2,018
Завершенные тесты: 1
28.12.2013, 01:43     Библиотека для работы с русскими текстами! #1
Здорова господа!!!

Нужна в общем библиотека которая будет проверять русский текст например на читаемость, что б она проверяла читаемый текст или просто набор слов. Мне нужна такая библиотека для проверки строк, что б можно было определить какой текст находится хотя бы примерно?

Возможно есть такие либы, просто интересно как же поисковики определяют что на сайте допустим находится набор слов, а не смысловой текст?
Similar
Эксперт
41792 / 34177 / 6122
Регистрация: 12.04.2006
Сообщений: 57,940
28.12.2013, 01:43     Библиотека для работы с русскими текстами!
Посмотрите здесь:

Библиотека для работы с видеопамятью. C++
Библиотека для удобной работы с типом string с++ C++
Библиотека для работы с файлами C++
C++ Библиотека для работы с матрицами
библиотека для работы с вебом C++
После регистрации реклама в сообщениях будет скрыта и будут доступны все возможности форума.
gazlan
2867 / 1815 / 272
Регистрация: 27.08.2010
Сообщений: 4,912
Записей в блоге: 1
28.12.2013, 01:56     Библиотека для работы с русскими текстами! #2
Цитата Сообщение от ninja2 Посмотреть сообщение
как же поисковики определяют
Закон Ципфа
экспериментальное SEO
ninja2
 Аватар для ninja2
230 / 186 / 7
Регистрация: 26.09.2012
Сообщений: 2,018
Завершенные тесты: 1
28.12.2013, 02:13  [ТС]     Библиотека для работы с русскими текстами! #3
gazlan, вообще то мне как то нужно написать программу что б она смогла распознать читаемый текст и его скопировать, а нечитаемые не копировать, нужно универсальную функцию с настройками написать для обработки любой случайной HTML страницы на выходе получался ХОРОШО ЧИТАЕМЫЙ текс, повторюсь любой HTML страницы и ХОРОШО ЧИТАЕМЫЙ ТЕКСТ. Реально ли такую прогу написать? У меня фигня получилась текст получается нечитаемый от мой сгенерированный сайт он так называемый ГС потому что контент нечитаемый, его копипастом даже нельзя назвать контент просто нечитаемый http://cmdgu.ru . От щас пытаюсь улучшить свой алгоритм обработки html текста?!
coderXLsn
 Аватар для coderXLsn
49 / 49 / 1
Регистрация: 16.05.2010
Сообщений: 348
28.12.2013, 02:55     Библиотека для работы с русскими текстами! #4
да жесть сайт. поисковики анализируют поведению юзеров. недавно слышал гугл офф подтвердил что они выполняют все скрипты на сайте и видять все что и юзер
gazlan
2867 / 1815 / 272
Регистрация: 27.08.2010
Сообщений: 4,912
Записей в блоге: 1
28.12.2013, 03:02     Библиотека для работы с русскими текстами! #5
Цитата Сообщение от ninja2 Посмотреть сообщение
обработки любой случайной HTML страницы
В качестве первого шага, я бы использовал InnerText. В любом случае, HTML придется чистить. Тема парсинга необъятна, начать можно со статей на хабре и блога Яндекса там же. К примеру, парсинг HTML в одну строку, 'Правильный' html парсинг итд.

Поройтесь по темам Data mining, автореферирование, поиск плагиата и подобным.

Попробуйте, для начала, максимально сузить задачу - под конкретный сайт или разметку. Многие сайты используют популярные CMS, начните с одной из них, потом сможете добавить другие.

Посмотрите еще Michael Schrenk "Webbots, Spiders, and Screen Scrapers"
ninja2
 Аватар для ninja2
230 / 186 / 7
Регистрация: 26.09.2012
Сообщений: 2,018
Завершенные тесты: 1
29.12.2013, 00:22  [ТС]     Библиотека для работы с русскими текстами! #6
Цитата Сообщение от gazlan Посмотреть сообщение
Попробуйте, для начала, максимально сузить задачу - под конкретный сайт или разметку. Многие сайты используют популярные CMS, начните с одной из них, потом сможете добавить другие.
Не ну под конкретный шаблон сайта несоставит написать парсер. Вообще трудно будет понять на какой ЦМС написан сайт, просто поменять шаблон и все неразобрать да еще ЦМС тысячи, лучше сразу ставить задачу реально общий разбор любого html текста, что б я передал в функцию любой html текст и она проанализировала его и выдала мне либо готовый ОЧЕНЬ ХОРОШО ЧИТАЕМЫЙ ТЕКСТ либо сказала что html документ не содержит статьи, что то типо искуственного интелекта, наподобие человека, я ж смотрю на страницу и могу ж определить который текст сохранять, а который нет.
Вообще есть идея, написать расширяемую и постоянно улучшаемую функцию, с множеством ответвлений, похоже такая явно получиться будет очень много условий. Щас у меня алгоритм он не так как нужно работает совсем по другому, вообще хорошо что программы на С++ легко изменять без изменения старого кода, просто старый вызов функции закомментировал и вызвал новую функцию.

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

После того как мы полностью обработали html документ и получили текст, мне нужно его уже проверить на читаемость от как раз закон ЦИПФА подайдет проверить насколько текст читаемый, а затем уже если он не читаемый окажется то что то делать.

gazlan, от закон ЦИФКА как им пользоваться, мне нужно откуда то узнать частоту появления слов в предложении для конкретного языка, в моем случае русского и сравнивать уже с той частотой которая будет для моего текста? Ну я вроде как то его так понял. хз. буду разбираться, неплохие ссылки, особенно на хабре понравился пост. Уже есть идея как делать, да наверно начну, придется полностью мой старый код переделывать и возможно мой этот алгоритм неправильный будет, просто нужно сделать расширяемую функцию с кучей ответвлений на некоторые ответвления пока поставить заглушки, обрабатывать пока самые частые условия, потом со временем заглушек уже нигде не будет и мы рано или поздно получим качественную функцию обработки текста, в любом случае количество возможных условий конечно и рано или поздно мы все их будем обрабатывать ИМХО.

Добавлено через 13 часов 11 минут
gazlan, Слишишь а как пользоваться законом ЦИПФА? Допустим есть у меня слово "чукча", оно у меня встречается 4 раза в тексте, по частоте для моего текста оно стоит на 10 месте. Как мне проверить соответствует ли частота слов закону ЦИПФА? Правильно мне нужно полностью знать частоту для всех слов, что б можно все мои слова расставить в правильном порядке относительно частоты для языка, а затем уже проверить соответствует ли частота закону?

Добавлено через 2 минуты
Хочу попробовать реализовать проверку русского текста по этому закону, что мне для этого нужно, знать частоту всех слов русского языка?
DU
1477 / 1053 / 45
Регистрация: 05.12.2011
Сообщений: 2,279
29.12.2013, 00:37     Библиотека для работы с русскими текстами! #7
на хабре не далее чем 2 месяца назад была статейка о выдергивании значимого контента веб странички, с отбросом всякой рекламы, каментов и т.п. деталей не помню и статью найти не смог. может у вас получится.
что осталось в памяти, так это то, что нормального решения пока что так и не сделали (по крайней мере открытого).
задача достаточно сложная. но кое-какие результаты все равно были.
универсальную вещь сделать своими силами вообще врятли получится.
так что как тут уже написали, стоит сузить задачу и попытаться ее порешать. если рутовая задача долгосрочная - то этот опыт может пригодиться
ninja2
 Аватар для ninja2
230 / 186 / 7
Регистрация: 26.09.2012
Сообщений: 2,018
Завершенные тесты: 1
29.12.2013, 01:01  [ТС]     Библиотека для работы с русскими текстами! #8
DU, я вообще хочу закон ЦИПФА реализовать "80% предложений состоит из 20% слов" мне нужно походу где то взять список наиболее часто использующих слов русского языка что б проверять с его помощью 20% слов моего текста, если будет там 20% частоупотребляемых слов, то можно сказать что текст читаемый, если там будет больше или меньше 20% то это уже будет не читаемый текст, ну можно сказать что он нечитаемый, где можно взять список частоупотребляемых слов русского языка эти 20%, для того что б реализовать сам закон? Именя самые употребляемые слова можно легко проверять текст на читаемость!?

Добавлено через 7 минут
Господа где можно скачать список русских слов частоупотребляемых, мне нужно 20% из всех русских слов именно те слова которые частоупотребляются, буду проверять на читаемость текст по этому закону: 80% 20%

80% предложений состоит из 20% слов
80% работы выполняют 20% сотрудников
80% научных публикаций пишут 20% ученых
80% профильной информации находится в 20% источников
80% материальных ценностей принадлежит 20% населения
80% времени процессора занимают 20% инструкций(команд)
80% населения сосредоточено в 20% городов
80% общего объема продаж дают 20% ассортимента
80% прибыли дают 20% покупателей
80% преступлений совершают 20% преступников
80% ДТП произошли по вине 20% водителей
80% разводов на совести 20% вступивших в брак
80% времени вы носите 20% имеющейся у вас одежды

продолжать можно до бесконечности...
походу 80% знаний поддадутся имея 20% знаний, так что необязательно все учить , прикольный все таки закон.

Добавлено через 1 минуту
И походу поисковые роботы так же проверяют текст на читаемост, в принципе проверить не составит труда имея список общеупотребляемых слов только где этот список слов скачать?

Добавлено через 4 минуты
Похоже что б проверить любой текст на читаемость достаточно подсчитать частоту каждого слова, взять 20% слов которые имеют самую большую частоту и сравнить их со словами для всего языка, с 20% слов часто употребляемых для всего языка и если они примерно совпадут, то можно говорить что текст читаемый правильно, если нет больше или меньше то текст не читаемый?

Добавлено через 3 минуты
Хотя если подумать, мы можем слова менять местами переставлять и текст получится не читаемый, мне кажется поисковики как то по другому проверяют текст на читаемость еще. Ну в принципе хотябы этот способ нужно реализовать. Нужен список частоупотребляемых слов русского языка?
gazlan
2867 / 1815 / 272
Регистрация: 27.08.2010
Сообщений: 4,912
Записей в блоге: 1
29.12.2013, 01:05     Библиотека для работы с русскими текстами! #9
Цитата Сообщение от ninja2 Посмотреть сообщение
где можно скачать список русских слов частоупотребляемых
Ляшевская, Шаров ! Частотный словарь современного русского языка
ninja2
 Аватар для ninja2
230 / 186 / 7
Регистрация: 26.09.2012
Сообщений: 2,018
Завершенные тесты: 1
29.12.2013, 01:10  [ТС]     Библиотека для работы с русскими текстами! #10
не неправильно сформировал, похоже отак должно быть Было замечено, что при большом количестве текстов около 80% его занимают две тысячи самых употребительных (частотных, активных лексем).
Поисковик видимо все страницы на сайте формирует в один текст и проверяет на эти 2к общеупотребительных лексем эсли будет 80% то все впорядке, если нет то непорядок и наверно нечитаемый текст?

Добавлено через 3 минуты
gazlan, о спосибо, а мб есть еще список общеупотребительных лексем. То ведь слова по идее для предложений, а для текстов нужны общеупотребительные лексемы, ну что б именно читаемость проверять. Я еще этот закон доконца не понял и вообще я там выше неправильно понял отето 80% предложений состоит из 20% слов , тут получается должно быть в тексте не 20% а целых 80% частых слов русского языка, а я сразу подумал что 20.
gazlan
2867 / 1815 / 272
Регистрация: 27.08.2010
Сообщений: 4,912
Записей в блоге: 1
29.12.2013, 01:22     Библиотека для работы с русскими текстами! #11
Цитата Сообщение от ninja2 Посмотреть сообщение
как пользоваться законом ЦИПФА?
Картинки: Закон Ципфа — Вводная статья

Много формул: Статистический анализ естественно-языкового описания, Ранговые распределения, О смысле ранговых распределений

Perl script: простенький скрипт на Перле

До кучи: Инструменты проверки плотности ключевых слов

Добавлено через 5 минут
Цитата Сообщение от ninja2 Посмотреть сообщение
список общеупотребительных лексем
Не уверен, что понял вопрос, но, в любом случае, стоит порыться здесь: Национальный корпус русского языка и на аналогичных ресурсах.
DU
1477 / 1053 / 45
Регистрация: 05.12.2011
Сообщений: 2,279
29.12.2013, 01:56     Библиотека для работы с русскими текстами! #12
что для вас означает "хорошо читаемый текст"?
это текст с сохранением разметки: отступы, параграфы, ... или что-то другое?
я вот выделил текст в браузере со странички этого форума и в notepad скопировал. он точно на русском и прочитать я его могу. но не скажу, что он для меня - хорошо читаемый.
ninja2
 Аватар для ninja2
230 / 186 / 7
Регистрация: 26.09.2012
Сообщений: 2,018
Завершенные тесты: 1
29.12.2013, 03:36  [ТС]     Библиотека для работы с русскими текстами! #13
Цитата Сообщение от DU Посмотреть сообщение
что для вас означает "хорошо читаемый текст"?
это текст с сохранением разметки: отступы, параграфы, ... или что-то другое?
я вот выделил текст в браузере со странички этого форума и в notepad скопировал. он точно на русском и прочитать я его могу. но не скажу, что он для меня - хорошо читаемый.
Да нет все таки мне нужно правильно распарсивать html документ, если его правильно распарсивать, то текст полюбом получится хорошо читаемым. Наверно закон ЦИПФА не нужен, ну это морочно проверять да и смысл, проверю я текст окажется нечитаемый и что дальше я буду делать, главное нужно заставить программу анализировать текст, правильно форматировать его, потом уже читаемость проверять.

DU, Ну ты видел мой сайт что вверху был, там текст нечитаемый, мне такое не нужно. Читаемый это когда ты заходишь на сайт и у тебя не возникает ощущения что сайт сгенерирован программой!
MoreAnswers
Эксперт
37091 / 29110 / 5898
Регистрация: 17.06.2006
Сообщений: 43,301
31.12.2013, 09:07     Библиотека для работы с русскими текстами!
Еще ссылки по теме:

библиотека для работы с mysql C++
Библиотека для работы с http C++
C++ С++ библиотека для работы с Word

Искать еще темы с ответами

Или воспользуйтесь поиском по форуму:
gazlan
2867 / 1815 / 272
Регистрация: 27.08.2010
Сообщений: 4,912
Записей в блоге: 1
31.12.2013, 09:07     Библиотека для работы с русскими текстами! #14
Цитата Сообщение от DU Посмотреть сообщение
на хабре не далее чем 2 месяца назад была статейка о выдергивании значимого контента веб странички
Кстати, да: текст любой ценой
Yandex
Объявления
31.12.2013, 09:07     Библиотека для работы с русскими текстами!
Ответ Создать тему
Опции темы

Текущее время: 01:52. Часовой пояс GMT +3.
КиберФорум - форум программистов, компьютерный форум, программирование
Powered by vBulletin® Version 3.8.9
Copyright ©2000 - 2016, vBulletin Solutions, Inc.
Рейтинг@Mail.ru