Форум программистов
 

Восстановите пароль или Зарегистрируйтесь на форуме, о проблемах и с заказом рекламы пишите сюда - alarforum@yandex.ru, проверяйте папку спам!

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

Восстановить пароль

Купить рекламу на форуме - 42 тыс руб за месяц

Ответ
 
Опции темы Поиск в этой теме
Старый 23.03.2015, 21:27   #1
Shouldercannon
Участник клуба Подтвердите свой е-майл
 
Аватар для Shouldercannon
 
Регистрация: 26.01.2008
Сообщений: 1,897
Вопрос Достать часть исходного кода 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 в 21:34.
Shouldercannon вне форума Ответить с цитированием
Старый 24.03.2015, 00:01   #2
Человек_Борща
Старожил
 
Аватар для Человек_Борща
 
Регистрация: 30.12.2009
Сообщений: 11,430
По умолчанию

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

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

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

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

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

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 в 14:06.
evg_m вне форума Ответить с цитированием
Старый 24.03.2015, 14:25   #8
Stilet
Белик Виталий :)
Старожил
 
Аватар для Stilet
 
Регистрация: 23.07.2007
Сообщений: 57,097
По умолчанию

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

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

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


Купить рекламу на форуме - 42 тыс руб за месяц



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