Главная страница
    Top.Mail.Ru    Яндекс.Метрика
Форум: "Начинающим";
Текущий архив: 2008.06.08;
Скачать: [xml.tar.bz2];

Вниз

парсинг Web   Найти похожие ветки 

 
voe   (2008-05-13 09:58) [0]

Есть такая вот конструкция:

<DIV id=11>
<DIV align=justify >НУЖНЫЙ МНЕ <SPAN class=h>й</SPAN>ТЕКСТ!</DIV>


Как мне получить из этого: НУЖНЫЙ МНЕ ТЕКСТ!
Все что у меня получилось это: НУЖНЫЙ МНЕй ТЕКСТ!

Как мне проигнорировать <SPAN class=h>й</SPAN> ?
Данные вытаскиваю следующим образом:

      var
 HtmlDocument: IHtmlDocument2;
 HtmlCollection: IHtmlElementCollection;
 HtmlElement: IHtmlElement;
 I: Integer;
 SourceSave1: Textfile;
begin
   AssignFile(SourceSave1,"c:\test2.txt");
 ReWrite(SourceSave1); {Create a new file named ek.txt}
 HtmlDocument := EmbeddedWB1.Document as IHtmlDocument2;
 HtmlCollection := HtmlDocument.All;
 for I := 0 to HtmlCollection.Length - 1 do begin
   HtmlElement := HtmlCollection.Item(i, 0) as IHtmlElement;
   if (HtmlElement.TagName="DIV") and (HtmlElement.ID="11") then
   Writeln(SourceSave1, HtmlElement.innertext);
   end;
Closefile(SourceSave1);


 
clickmaker ©   (2008-05-13 10:15) [1]

StringReplace или RegExp - первое, что приходит в голову


 
sniknik ©   (2008-05-13 10:30) [2]

> <SPAN class=h>й</SPAN>
книжки с литреса тыришь?
правильно, експроприируй эксроприируемое! но гораздо проще скачать тот же текст с бесплатных библиотек, цельный и в открытом формате.


 
palva ©   (2008-05-13 10:30) [3]

> Есть такая вот конструкция:
Если конструкция всегда правильная с точки зрения XML, то помочь могут парсеры XML.


 
Anatoly Podgoretsky ©   (2008-05-13 10:32) [4]

> voe  (13.05.2008 09:58:00)  [0]

Трудновато, поскольку твои правила удаления и добавления пробелов не поддаются логике.


 
voe   (2008-05-13 11:01) [5]

А как нибуть просто прочитать только текст из тега DIV нельзя?


 
affonya   (2008-05-13 11:25) [6]

А почему не загрузишь в TreeView , а потом не поищешь по нему node.text ?


 
voe   (2008-05-13 12:37) [7]


> правильно, експроприируй эксроприируемое! но гораздо проще
> скачать тот же текст с бесплатных библиотек, цельный и в
> открытом формате.


Как правильно?


> affonya   (13.05.08 11:25) [6]
> А почему не загрузишь в TreeView , а потом не поищешь по
> нему node.text ?


Объемы большие + при загрузки в TreeView наверняки и текст из <SPAN class=h>й</SPAN> тоже загрузится.


 
voe   (2008-05-14 23:56) [8]

Никаких идей?


 
sniknik ©   (2008-05-15 08:41) [9]

уже высказаны 2 диаметрально противоположные идеи... 1 - скачать с другого места в готовом формате, 2 - парсить (/вырезать лишние теги) получаемый, только htm а не XML.
и в общем то да, других не предвидится... хотя нет, есть еще пара - 3 - найди готовую программу или, 4 - найми программиста.

идеи кончились, дело за реализацией.

> А почему не загрузишь в TreeView , а потом не поищешь по нему node.text ?
потому что у него не hml, а веб страничка, у которой в одном теге текст "разбавленный" лишними тегами (SPAN) со случайными буквами, которые делают его нечитаемым если копировать стандартно.

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


 
REA   (2008-05-15 11:07) [10]

А поудалять тэги span и сохранить как текст?


 
sniknik ©   (2008-05-15 11:19) [11]

как текст нельзя, потеряешь форматирование, вот сохранить как hml с удаленными span тегами. другое дело. после открывается хоть вордом, хоть фикшенбук конвертором, будет правильно оформленный текст.

хотя, это имхо, х.з. что на самом деле автору нужно.


 
Style ©   (2008-05-15 11:20) [12]


> StringReplace или RegExp - первое, что приходит в голову


Конечно регулярные выражения что надо для таких задач.
а вот откуда в Делфе - RegExp? Я вот в 6ке не нашел.
Знаю что в DevExpress компонентах есть неплохая реализация механизма регулярных выражений.



Страницы: 1 вся ветка

Форум: "Начинающим";
Текущий архив: 2008.06.08;
Скачать: [xml.tar.bz2];

Наверх




Память: 0.47 MB
Время: 0.043 c
2-1210767363
evgenij
2008-05-14 16:16
2008.06.08
Scroll in DBGrid


15-1208931582
ILR
2008-04-23 10:19
2008.06.08
Помогите с задачей


3-1199004743
Александр Иванов
2007-12-30 11:52
2008.06.08
Втавка записи при ограничении уникланьости


2-1211107765
Alexei
2008-05-18 14:49
2008.06.08
Как узнать версию файла?


15-1209030623
TUser
2008-04-24 13:50
2008.06.08
X-сервер для ХР





Afrikaans Albanian Arabic Armenian Azerbaijani Basque Belarusian Bulgarian Catalan Chinese (Simplified) Chinese (Traditional) Croatian Czech Danish Dutch English Estonian Filipino Finnish French
Galician Georgian German Greek Haitian Creole Hebrew Hindi Hungarian Icelandic Indonesian Irish Italian Japanese Korean Latvian Lithuanian Macedonian Malay Maltese Norwegian
Persian Polish Portuguese Romanian Russian Serbian Slovak Slovenian Spanish Swahili Swedish Thai Turkish Ukrainian Urdu Vietnamese Welsh Yiddish Bengali Bosnian
Cebuano Esperanto Gujarati Hausa Hmong Igbo Javanese Kannada Khmer Lao Latin Maori Marathi Mongolian Nepali Punjabi Somali Tamil Telugu Yoruba
Zulu
Английский Французский Немецкий Итальянский Португальский Русский Испанский