Форум программистов
 
О проблемах, например, с регистрацией пишите сюда - alarforum@yandex.ru, проверяйте папку спам! Обязательно пройдите активизацию e-mail, а тут можно восстановить пароль.

Вернуться   Форум программистов > Delphi > Общие вопросы Delphi
Регистрация

Восстановить пароль
Повторная активизация e-mail

Здесь нужно купить рекламу за 20 тыс руб в месяц! ) пишите сюда - alarforum@yandex.ru
Без учёта ботов - 20000 человек в день, 350000 в месяц.

Ответ
 
Опции темы
Старый 23.03.2015, 22:27   #1
Shouldercannon
Участник клуба Подтвердите свой е-майл
 
Аватар для Shouldercannon
 
Регистрация: 26.01.2008
Сообщений: 1,813
Вопрос Достать часть исходного кода HTML

Доброго времени суток!
Подскажите пожалуйста как из всего исходного кода html-странички получить данные только блока
PHP код:
<div id="wcomments_posts_wrap"


Как вариант можно скопировать всё между <div id="wcomments_posts_wrap"> и <a href="" onclick="WComments.showMore(); return false;" id="wcomments_more_link"

Последний раз редактировалось Shouldercannon; 23.03.2015 в 22:34.
Shouldercannon вне форума Ответить с цитированием
Старый 24.03.2015, 01:01   #2
Человек_Борща
Старожил
 
Аватар для Человек_Борща
 
Регистрация: 30.12.2009
Сообщений: 11,455
По умолчанию

используйте метод getElementById от IHTMLDocument
Человек_Борща вне форума Ответить с цитированием
Старый 24.03.2015, 07:58   #3
Shouldercannon
Участник клуба Подтвердите свой е-майл
 
Аватар для Shouldercannon
 
Регистрация: 26.01.2008
Сообщений: 1,813
По умолчанию

Цитата:
Сообщение от Человек_Борща Посмотреть сообщение
используйте метод getElementById от IHTMLDocument
Весь исходный код страницы находится в переменной типа string. В данном случае метод getElementById от IHTMLDocument тоже подойдёт?
Shouldercannon вне форума Ответить с цитированием
Старый 24.03.2015, 08:23   #4
Stilet
Белик Виталий :)
Старожил
 
Аватар для Stilet
 
Регистрация: 23.07.2007
Сообщений: 57,840
По умолчанию

Цитата:
В данном случае метод getElementById от IHTMLDocument тоже подойдёт?
Нет конечно ) Надо ж говорить та договаривать.
Используй регулярные выражения в этом случае. Или цикл с pos()-copy()-delete()
I'm learning to live...
Stilet вне форума Ответить с цитированием
Старый 24.03.2015, 12:01   #5
fbus
Форумчанин
 
Аватар для fbus
 
Регистрация: 23.10.2008
Сообщений: 460
По умолчанию

Не знаю что конкретно нужно ТСу, но я бы посоветовал сначала через pos() удалить все лишнее перед нужным блоком, потом так же после блока. будет гораздо удобней работать.
fbus вне форума Ответить с цитированием
Старый 24.03.2015, 12:07   #6
Shouldercannon
Участник клуба Подтвердите свой е-майл
 
Аватар для Shouldercannon
 
Регистрация: 26.01.2008
Сообщений: 1,813
По умолчанию

Цитата:
Сообщение от fbus Посмотреть сообщение
Не знаю что конкретно нужно ТСу, но я бы посоветовал сначала через pos() удалить все лишнее перед нужным блоком, потом так же после блока. будет гораздо удобней работать.
Совершенно верно
Shouldercannon вне форума Ответить с цитированием
Старый 24.03.2015, 14:53   #7
evg_m
Старожил
 
Регистрация: 20.04.2008
Сообщений: 5,040
По умолчанию

HTML это почти XML (есть непарные теги)
если они известны и можно найти и убрать их.
Код:
htmlstr:=StringRepalce(htmlstr, '<b>', '');
потом работаем с нормальной xml строкой
Код:
uses msxml;

xml:=CoDOMDocument.Create;
xml.loadXML(HTMLstr); 
xml.SelectNode('//div[@id="wcomments_posts_wrap"]);
Showmessage(xml.xml);
программа — запись алгоритма на языке понятном транслятору

Последний раз редактировалось evg_m; 24.03.2015 в 15:06.
evg_m вне форума Ответить с цитированием
Старый 24.03.2015, 15:25   #8
Stilet
Белик Виталий :)
Старожил
 
Аватар для Stilet
 
Регистрация: 23.07.2007
Сообщений: 57,840
По умолчанию

Цитата:
uses msxml;
А гораздо лучше будет использование uses mshtml
I'm learning to live...
Stilet вне форума Ответить с цитированием
Старый 24.03.2015, 15:36   #9
lomastr_
Форумчанин
 
Регистрация: 16.01.2015
Сообщений: 672
По умолчанию

Цитата:
если они известны и можно найти и убрать их.
они это почти если не совсем все, так до полноценного парсера можно дойти
lomastr_ вне форума Ответить с цитированием
Старый 26.03.2015, 00:44   #10
NIKOLAYY2
Форумчанин
 
Регистрация: 24.12.2014
Сообщений: 220
По умолчанию

А где страница сама есть?
Что именно получать все в подряд или сортировать или выбирать?
Теги же не надо получать или надо так же?
NIKOLAYY2 вне форума Ответить с цитированием
Ответ

Здесь нужно купить рекламу за 20 тыс руб в месяц! ) пишите сюда - alarforum@yandex.ru
Без учёта ботов - 20000 человек в день, 350000 в месяц.

Опции темы


Похожие темы
Тема Автор Раздел Ответов Последнее сообщение
Редактор исходного кода AndrYxo Софт 0 23.06.2011 08:48
Из исходного кода в Cookies x852x Общие вопросы Delphi 0 21.03.2010 14:09
Анализ исходного кода heart Безопасность, Шифрование 7 31.12.2009 09:26
Анализ исходного кода SwitchMan Паскаль, Turbo Pascal, PascalABC.NET 1 25.04.2009 18:14
Поменять местами правую и левую часть исходного массива антон2 Паскаль, Turbo Pascal, PascalABC.NET 4 07.04.2009 17:36


Проекты отопления, пеллетные котлы, бойлеры, радиаторы
интернет магазин respective.ru
Пеллетный котёл Emtas
котлы EMTAS