Навоял скриптик. С использованием cUrl благополучна тащу весь Html в переменную. Необходимые данные находятся примерно в середине.
у меня возникли вот какие мысли, чтоб вытащить их в массив.
1. substr с верху и снизу
2. strip_tags (но это еще под вопросом)
3. explode в массив
4. а потом trim, preg_replace, чтобы удалить излишние пробелы и переносы строк.
У меня возник вопрос, а не будет ли это долго выполнятся? может быть есть более скоростные методы?
з.ы ну и на засыпку, а как быть, если захочется оставить ссылки?
____
з.ы.ы может быть задать этот вопрос в другом разделе?
Спустя 4 часа, 22 минуты, 42 секунды (19.09.2009 - 08:51) glock18 написал(а):
Более скоростные - это не используя регулярки как минимум.
А скорость - зависит от того для каких целей и как часто будет выполняться скрипт.
Если захочется оставить ссылки, то придется отказаться от strip_tags, очевидно.
какого рода поиск по тексту нужен?
А скорость - зависит от того для каких целей и как часто будет выполняться скрипт.
Если захочется оставить ссылки, то придется отказаться от strip_tags, очевидно.
какого рода поиск по тексту нужен?
Спустя 2 часа, 52 минуты, 3 секунды (19.09.2009 - 11:43) FatCat написал(а):
Самый быстрый алгоритм, увы, довольно геморройный. Особенно, если нужно тащить независимо от регистра.
Последовательность действий:
1. Копируем текст в нижнем регистре:
Последовательность действий:
1. Копируем текст в нижнем регистре:
PHP |
$txt_l = strtolower($txt); |
2. Операторами strpos и substr по переменной $txt_l находим искомые объекты и заносим в массив позиции начала и конца каждого искомого объекта.
3. Посредством substr нарезаем искомые объекты из $txt.
Спустя 2 часа, 29 минут, 15 секунд (19.09.2009 - 14:12) lykoshko написал(а):
проблема в том, что текст, который надо тянут изменяется каждый день и размер его тоже разный, поэтому перед тем как использовать регулярки надо обрезать.
Спустя 2 часа, 1 минута, 10 секунд (19.09.2009 - 16:13) FatCat написал(а):
Приведу для примера код функции "зазеркаливания" нашего движка форума: при первом просмотре страницы основного форума через зеркало, на зеркале заполняется форумная БД, чтобы при повторных запросах этой же страницы отображать данные уже из своей базы, не ломясь по HTTP на основной.
Естественно совершенно, что топики делаются только для четния, писать можно только на основном.
Вот код парсинга страницы темы:
Естественно совершенно, что топики делаются только для четния, писать можно только на основном.
Вот код парсинга страницы темы:
Свернутый текст
PHP |
// Если страница топика, парсим в таблицы топиков и сообщений; заодно и мемберов не забываем |
Спустя 1 час, 55 минут, 43 секунды (19.09.2009 - 18:09) lykoshko написал(а):
спасибо. буду копать.