А есть такая прога...

12
N4
На сайте с 27.07.2008
Offline
89
#11

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

но в принципе самым простым решением: это искать комбинацию

точка (пробел) Любая Большая Буква [А-ЯA-Z], либо цифра

такой алгоритм отсекает всю прямую речь, используемую в книжках, что значительно повышает качество контента.

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

Интернет-магазин: SP.Easy.Shop 1.4
[Удален]
#12

проще оставить только то что нужно, правильно составить регулярное выражение и всё

graber.txt добавил 14.07.2010 в 02:42

number4:
так как кроме текст в хтмл может быть и разделен тегами

теги проще снести

[Удален]
#13
Эту собаку зовут Каштанка, потому что её шерсть каштанового цвета

Такого конечно я не делал в своей программе, а вот простое условие для парсинга сделал от большой буквы до точки, страница программы: Очистка контента

P.s. Кстати, не подскажете, почему с серча перестала ходить почта на подписанные темы при ответах? Причем сразу весь лист подписок перестал работать

S
На сайте с 28.10.2005
Offline
318
#14

На пхп как-то так:


<?php

$in = file_get_contents ( 'in.html' );

$in = str_replace ( "\t", ' ', str_replace ( "\r", ' ', str_replace ( "\n", ' ', $in ) ) );

$in = preg_replace ( '/<.*>/U', ' ', $in );

$in = trim ( preg_replace ( '/ {2,}/', ' ', $in ) );

preg_match_all ( '/(\. |^)([А-ЯA-Z][^\.]*\. )/', $in, $matc, PREG_SET_ORDER );

file_put_contents ( 'out.txt', $matc [1] );

?>
[Удален]
#15
Social-engines:
Такого конечно я не делал в своей программе, а вот простое условие для парсинга сделал от большой буквы до точки, страница программы: Очистка контента

Спасибо. Но не многовато ли эта прога выкидывает? Из 8 метров текста остается 1. По всей видимости, если нужен суперкачественный текст, без ручной чистки все-таки не обойтись...

Kalessin добавил 14.07.2010 в 10:27

response:
какой еретический ужас. вам по отдельном скурипту на каждый случай надо? для большой буквы и точки, для маленькой и точки, для любой буквы и любого знака препинания? взять любой кастомайзбл парсер и собрать, настроив правила.

Какой самый лучший парсер для этого?

N4
На сайте с 27.07.2008
Offline
89
#16
graber.txt:
проще оставить только то что нужно, правильно составить регулярное выражение и всё
теги проще снести

вот-вот и я когда-то примерно так же думал. проще снести и проще оставить.

теги сносить как раз не надо. одним регулярным выражением не обойтись. у меня фильтр из примерно 10 последовательных регэкспов.

и как раз на выходе остается то, что нужно. из 5 мегов исходного напарсенного текста остается 1-2.

Solo_by
На сайте с 19.06.2009
Offline
220
#17
number4:
ну а как реализовать - дело второе. можно методом прямых рук, можно через жопу, по-индусски.

я бы написал конечный автомат ;)

[Удален]
#18
Спасибо. Но не многовато ли эта прога выкидывает? Из 8 метров текста остается 1. По всей видимости, если нужен суперкачественный текст, без ручной чистки все-таки не обойтись...

Какое Вы поставили ТЗ - так и сделана программа. От большой буквы до точки - и ни махинацией больше

12

Авторизуйтесь или зарегистрируйтесь, чтобы оставить комментарий