Автор Тема: Разбор HTML текста  (Прочитано 4546 раз)

0 Пользователей и 1 Гость просматривают эту тему.

Оффлайн kiruxa

  • Фанат форума
  • Постоялец
  • ***
  • Сообщений: 209
  • +0/-0
  • 0
    • Просмотр профиля
    • http://autoxloo.com
Разбор HTML текста
« : 21 Апреля 2008, 16:42:35 »
Здравствуйте у меня есть входящий ХТМЛ текст (присылаються данные),
идет по шаблону впринципе все одинаковое

типа



    ....





мне надо вырезать все что в указано теге,
притом обрезать по закрывающемуся тегу....

подскажите куда смотреть и как правильно обрезать тег чтобы он отрезался по откр и закр тегу


спасибо,
непиннайте маленьких
Не бывает так чтоб никто нигде никак ничем :)
 Изготовление сайтов в Днепропетровске. Раскрутка, поддержка

Оффлайн ravshaniy

  • Фанат форума
  • Постоялец
  • ***
  • Сообщений: 191
  • +0/-0
  • 0
    • Просмотр профиля
    • http://
Разбор HTML текста
« Ответ #1 : 22 Апреля 2008, 11:27:53 »
1 вариант. вам могут помочь регулярные выражения как вариант

2 вариант - возможно что парсер типо xml. все таки стандарт дом, должен создать объекты.

3. ну и можно просто циклом. если вы читаете файл построчно. то построить условия в цикле так чтобы не считывать ненужные строки

4. вариант - красивый если использовать чтото типо grep. array_filter - кажется в php. осталось сделать так чтобы поток строк был массивом и как не странно
array file ( string filename [, int use_include_path [, resource context]])
то есть возвращает массив строк.

возможно еще есть варианты. думаю что второй вариант лучше отбросить как малоэффективный
убили кенни, сволочи

Оффлайн kiruxa

  • Фанат форума
  • Постоялец
  • ***
  • Сообщений: 209
  • +0/-0
  • 0
    • Просмотр профиля
    • http://autoxloo.com
Разбор HTML текста
« Ответ #2 : 22 Апреля 2008, 11:47:03 »
Спасибо начал делать через DomDocument

Не могу получить ХТМЛ содержимое тага
$tag_list = $responseDoc->getElementsByTagName(\'table\');
foreach ($tag_list as $tag) {
if ($tag->attributes->getNamedItem(\'class\')->value==\'content\')
    foreach ($tag->childNodes as $item) {
     
$node_name = iconv("UTF-8", "windows-1251", $item->nodeName);
$node_value = iconv("UTF-8", "iso8859-1", $item->nodeValue);
}
}

Не подзкажите как получить ХТМЛ содержимое?
Не бывает так чтоб никто нигде никак ничем :)
 Изготовление сайтов в Днепропетровске. Раскрутка, поддержка

Оффлайн hanslinger

  • H2Oer
  • Ветеран
  • *****
  • Сообщений: 1148
  • +0/-0
  • 2
    • Просмотр профиля
    • http://www.orava.ru
Разбор HTML текста
« Ответ #3 : 22 Апреля 2008, 12:30:59 »
[p]simplexml[/p]

Оффлайн linzman

  • Заглянувший
  • Новичок
  • *
  • Сообщений: 5
  • +0/-0
  • 0
    • Просмотр профиля
    • http://
Разбор HTML текста
« Ответ #4 : 13 Мая 2008, 16:04:18 »
а чем регекспы хуже?

 

Sitemap 1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28