Модераторы: Aliance, skyboy, MoLeX, ksnk
  

Поиск:

Ответ в темуСоздание новой темы Создание опроса
> вытянуть узел из HTML-кода: PCRE или DOM? 
:(
    Опции темы
TUMS
Дата 16.8.2009, 23:15 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Шустрый
*


Профиль
Группа: Участник
Сообщений: 61
Регистрация: 16.3.2008

Репутация: нет
Всего: 3



Скорее опрос, нежели вопрос.

Допустим у нас есть 40000 html-страниц с одинаковой структурой. Допустим что на них все теги закрыты так как надо. Допустим что надо из страниц достать один див с каким-то id.

Что бы использовали вы: preg_match() или DOM::getElementById() ?

Добавлено через 31 секунду
SamDark голосует за PCRE smile
PM MAIL WWW ICQ Skype GTalk Jabber MSN   Вверх
IZ@TOP
Дата 17.8.2009, 11:43 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Панда-бир!
****


Профиль
Группа: Участник
Сообщений: 4795
Регистрация: 3.2.2003
Где: Бамбуковый лес

Репутация: 2
Всего: 73



XMLReader - как вариант)


--------------------
Один из розовых плюшевых-всадников апокалипсиса... очень злой...

Семь кругов ада для новых элементов языка
Мои разрозненные мысли
PM MAIL WWW ICQ Skype GTalk   Вверх
TUMS
Дата 19.8.2009, 01:04 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Шустрый
*


Профиль
Группа: Участник
Сообщений: 61
Регистрация: 16.3.2008

Репутация: нет
Всего: 3



IZ@TOP
Код

$dom = new domDocument;
$dom->loadHTMLFile($url);
$dom->preserveWhiteSpace = false;
$content = $dom->getElementsByTagId('MegaID');


Как это будет выглядеть в Вашем варианте, и насколько быстрее?


Это сообщение отредактировал(а) TUMS - 19.8.2009, 01:12
PM MAIL WWW ICQ Skype GTalk Jabber MSN   Вверх
BrainWorker
Дата 24.8.2009, 23:52 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Опытный
**


Профиль
Группа: Участник
Сообщений: 553
Регистрация: 9.8.2007
Где: Дубна, Россия

Репутация: нет
Всего: 2



Код

$id = 'some_id';
preg_match('<div\s.*?id\s*=\s*"' . preg_quote($id) . '"/', $text);


Это сообщение отредактировал(а) BrainWorker - 24.8.2009, 23:53
PM MAIL Jabber   Вверх
IZ@TOP
Дата 25.8.2009, 11:31 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Панда-бир!
****


Профиль
Группа: Участник
Сообщений: 4795
Регистрация: 3.2.2003
Где: Бамбуковый лес

Репутация: 2
Всего: 73



TUMS, php.net/xmlreader. Сильно разница будет заметна исключительно на больших объемах, потому как ридер использует SAX парсер. И как бы есть предположение, что SAX парсеры используются для построения дома. Так что, думайте сами.


--------------------
Один из розовых плюшевых-всадников апокалипсиса... очень злой...

Семь кругов ада для новых элементов языка
Мои разрозненные мысли
PM MAIL WWW ICQ Skype GTalk   Вверх
SamDark
Дата 25.8.2009, 14:55 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Добрый кот
***


Профиль
Группа: Участник
Сообщений: 1424
Регистрация: 25.7.2006
Где: Voronezh

Репутация: 4
Всего: 38



Если DOM не меняется — тут есть выбор. Если некоторые части могут меняться — лучше использовать PCRE т.к. так мы получим меньше зависимостей (ориентироваться можно на отдельный блок, а не на положение этого блока в DOM).


--------------------
rmcreative.ru — Это жжж неспроста...
yiiframework.ru — О фреймворке Yii на русском.
reggi — здесь я регистрирую домены
PM MAIL WWW GTalk Jabber MSN   Вверх
  
Ответ в темуСоздание новой темы Создание опроса
1 Пользователей читают эту тему (1 Гостей и 0 Скрытых Пользователей)
0 Пользователей:
« Предыдущая тема | PHP: Тексты | Следующая тема »


 




[ Время генерации скрипта: 0.0647 ]   [ Использовано запросов: 21 ]   [ GZIP включён ]


Реклама на сайте     Информационное спонсорство

 
По вопросам размещения рекламы пишите на vladimir(sobaka)vingrad.ru
Отказ от ответственности     Powered by Invision Power Board(R) 1.3 © 2003  IPS, Inc.