|
|
Регистрация Восстановить пароль |
Регистрация | Задать вопрос |
Заплачу за решение |
Новые сообщения |
Сообщения за день |
Расширенный поиск |
Правила |
Всё прочитано |
|
Опции темы | Поиск в этой теме |
15.04.2012, 20:16 | #1 |
Форумчанин
Регистрация: 20.10.2011
Сообщений: 138
|
Парсинг
Здравствуйте! подскажите пожалуйста как можно вытащить несколько слов из htm документа .
Документ такой Код HTML:
<div id="weather10"><div id="blockDays" class="bd1"> <div class="tabs"> <div class="first"></div> <div class="main loaded" id="bd1"> <p><a class="day-link" data-link="#погода-харьков/2012-04-15" href="http://sinoptik.ua/погода-харьков/2012-04-15">Воскресенье</a></p> <p class="date dateFree">15</p> <p>апреля</p> <div class="weatherIco d420"><img src="http://sinoptik.ua/img/t.gif" alt="Сплошная облачность, дождь" title="Сплошная облачность, дождь" /></div> <div class ="temperature"> <div class="min">мин. <span>+13</span></div> <div class="max">макс. <span>+22</span></div> </div> </div> <div class="mid1"></div> <div class="main " id="bd2"> <p><a class="day-link" data-link="#погода-харьков/2012-04-16" href="http://sinoptik.ua/погода-харьков/2012-04-16">Понедельник</a></p> <p class="date ">16</p> <p>апреля</p> <div class="weatherIco d100"><img src="http://sinoptik.ua/img/t.gif" alt="Небольшая облачность" title="Небольшая облачность" /></div> <div class ="temperature"> <div class="min">мин. <span>+15</span></div> <div class="max">макс. <span>+22</span></div> </div> </div> <div class="mid2"></div> <div class="main " id="bd3"> <p><a class="day-link" data-link="#погода-харьков/2012-04-17" href="http://sinoptik.ua/погода-харьков/2012-04-17">Вторник</a></p> <p class="date ">17</p> <p>апреля</p> <div class="weatherIco d400"><img src="http://sinoptik.ua/img/t.gif" alt="Сплошная облачность" title="Сплошная облачность" /></div> <div class ="temperature"> <div class="min">мин. <span>+12</span></div> <div class="max">макс. <span>+19</span></div> </div> </div> <div class="mid3"></div> <div class="main " id="bd4"> <p><a class="day-link" data-link="#погода-харьков/2012-04-18" href="http://sinoptik.ua/погода-харьков/2012-04-18">Среда</a></p> <p class="date ">18</p> <p>апреля</p> <div class="weatherIco d400"><img src="http://sinoptik.ua/img/t.gif" alt="Сплошная облачность" title="Сплошная облачность" /></div> <div class ="temperature"> <div class="min">мин. <span>+13</span></div> <div class="max">макс. <span>+19</span></div> </div> </div> <div class="mid4"></div> <div class="main " id="bd5"> <p><a class="day-link" data-link="#погода-харьков/2012-04-19" href="http://sinoptik.ua/погода-харьков/2012-04-19">Четверг</a></p> <p class="date ">19</p> <p>апреля</p> <div class="weatherIco d400"><img src="http://sinoptik.ua/img/t.gif" alt="Сплошная облачность" title="Сплошная облачность" /></div> <div class ="temperature"> <div class="min">мин. <span>+16</span></div> <div class="max">макс. <span>+21</span></div> </div> </div> <div class="mid5"></div> <div class="main " id="bd6"> <p><a class="day-link" data-link="#погода-харьков/2012-04-20" href="http://sinoptik.ua/погода-харьков/2012-04-20">Пятница</a></p> <p class="date ">20</p> <p>апреля</p> <div class="weatherIco d410"><img src="http://sinoptik.ua/img/t.gif" alt="Сплошная облачность, мелкий дождь" title="Сплошная облачность, мелкий дождь" /></div> <div class ="temperature"> <div class="min">мин. <span>+11</span></div> <div class="max">макс. <span>+16</span></div> </div> </div> <div class="mid6"></div> <div class="main " id="bd7"> <p><a class="day-link" data-link="#погода-харьков/2012-04-21" href="http://sinoptik.ua/погода-харьков/2012-04-21">Суббота</a></p> <p class="date dateFree">21</p> <p>апреля</p> <div class="weatherIco d410"><img src="http://sinoptik.ua/img/t.gif" alt="Сплошная облачность, мелкий дождь" title="Сплошная облачность, мелкий дождь" /></div> <div class ="temperature"> <div class="min">мин. <span>+12</span></div> <div class="max">макс. <span>+18</span></div> </div> </div> Код HTML:
alt="Сплошная облачность, дождь" title= htm : |
15.04.2012, 20:34 | #2 |
Пользователь
Регистрация: 18.01.2012
Сообщений: 23
|
Используй компонент TWebBrowser
Mess With the Best, Die Like the Rest
|
15.04.2012, 20:35 | #3 |
Старожил
Регистрация: 08.04.2012
Сообщений: 3,229
|
Очевидно, нужно использовать какой-либо из алгоритмов поиска подстроки в строке пригодный для работы с длинными строками (в этой области до сих пор проводятся исследования и изобретаются эффективные алгоритмы - но можно взять и простейший).
Ну а затем поочередно искать первую и вторую ключевые последовательности, выделяя участки между ними. |
15.04.2012, 20:44 | #4 |
Старожил
Регистрация: 28.01.2009
Сообщений: 21,000
|
тут вполне достаточно Pos,PosEx,Copy.
ищем img, потом ищем аттрибуты ваши. если не уверены что каждый нужный вам img имеет аттрибуты, то ищете конец тега, и смотрите чтоб не уйти за него. Хорошо поставленный вопрос это уже половина ответа. | Каков вопрос, таков ответ.
Программа делает то что написал программист, а не то что он хотел. Функции/утилиты ждут в параметрах то что им надо, а не то что вы хотите. |
15.04.2012, 20:46 | #5 |
Пользователь
Регистрация: 01.05.2010
Сообщений: 29
|
Недавно выкладывал парсер http://programmersforum.ru/showthread.php?t=196104
Вот код копирования текста, находящегося в строке STRING между СЛОВО1 и СЛОВО2 Код:
Последний раз редактировалось alkador; 15.04.2012 в 20:52. |
15.04.2012, 20:50 | #6 | |
Пользователь
Регистрация: 18.01.2012
Сообщений: 23
|
и самое главное не забудь о ключевых разделителях:
Цитата:
Mess With the Best, Die Like the Rest
|
|
15.04.2012, 21:51 | #7 | |
Форумчанин
Регистрация: 20.10.2011
Сообщений: 138
|
Цитата:
Pos,PosEx,Copy. Memo2.Text := copy(Memo1.Text,pos('alt=',Memo1.Te xt)+5,pos('title=',Memo1.Text)-pos('alt=',Memo1.Text)-7); всё сделал спасибо! |
|
Похожие темы | ||||
Тема | Автор | Раздел | Ответов | Последнее сообщение |
парсинг | Pein95 | Работа с сетью в Delphi | 4 | 01.12.2011 02:06 |
парсинг | Pein95 | C# (си шарп) | 3 | 16.09.2011 01:24 |
Парсинг. | igor90 | Microsoft Office Excel | 1 | 03.11.2010 02:41 |