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

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

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

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

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

Ответ
 
Опции темы Поиск в этой теме
Старый 19.01.2009, 02:42   #1
OkeaH
Пользователь
 
Регистрация: 10.01.2009
Сообщений: 12
Плохо Парсинг HTML страницы

Подскажите как грамотно сделать парсинг строки в которой содержится HTML страница.
Необходимо выдернуть все ссылки начинающиеся с этой Последовательности <a href="./viewtopic.php?t= конец ссылки ближайшие двойные кавычки после данной Последовательности.
Итог ссылка вида "viewtopic.php?t=154100"

Впринципе думаю можно через POS попробовать:
1. находим Последовательность
2. копируем в отдельную строку 20-30 символов начиная со следующей позиции за Последовательностью + .
3. в новой строке находим позицию первого символа двойные кавычки.
4. получаем ссылку копированием - с 1 символа новой стоки по позицию найденных двойных кавычек и сохраняем ее в массив.
5. Уменьшаем строку со всей HTML страницей путем ее копирования в другую строку начиная с позиции найденных двойных кавычек и заканчивай длиной строки. (это чтобы и дальше можно было искать через POS). Затем обратно присваиваем уже урезанную строку.
6. повторяем с п.1.

Правильно ли будет парсить подобным образом или есть более грамотные методы?


Фрагмент страницы
Код:
<tr id="tr-154100" class="topic-tr">
	<td colspan="2" id="154100" class="topic_id"><img class="topic_icon" src="/images/folder_dl.gif" /></td>

	<td style="padding: 3px 5px 3px 3px;" class="tt">
		<div class="torTopic">
		<span class="tor-icon tor-approved">&radic;</span>·											<a href="./viewtopic.php?t=154100" class="torTopic bold tt-text">Алиса в стране чудес [Мультфильмы]</a>
			</div>
	<div class="topicAuthor" style="padding-top: 2px;">
					<a href="./profile.php?mode=viewprofile&amp;u=557140" class="topicAuthor">Tarantyl1980<wbr></a>
						</div>
		</td>

	<td class="tCenter med nowrap" style="padding: 2px 4px;">
			<div>
		<div><span class="seedmed" title="Seeders"><b>32</b></span><span class="med"> | </span><span class="leechmed" title="Leechers"><b>0</b></span></div>
		<div style="padding-top: 2px" class="small"><a href="./dl.php?t=154100" class="small" style="text-decoration: none">702&nbsp;MB</a></div>
	</div>
			</td>

	<td class="tCenter small nowrap" style="padding: 3px 4px 2px;">
	<p>
		<span title="Ответов">9</span>
	</p>
			<p style="padding-top: 2px" class="med" title="Скачан">
		<b>862</b>
	</p>
			</td>

	<td class="tCenter small nowrap" style="padding: 3px 6px 2px;">
	<p>2009-01-18 20:41</p>
		<p style="padding-top: 2px">
		<a href="./profile.php?mode=viewprofile&amp;u=7626192">Мара888</a>		<a href="./viewtopic.php?p=16918871#16918871"><img src="/images/icon_latest_reply.gif" class="icon2" alt="latest" title="Посмотреть последнее сообщение" /></a>
	</p>
		</td>
</tr>
<tr id="tr-116258" class="topic-tr">
	<td colspan="2" id="116258" class="topic_id"><img class="topic_icon" src="/images/folder_dl.gif" /></td>

	<td style="padding: 3px 5px 3px 3px;" class="tt">
		<div class="torTopic">
		<span class="tor-icon tor-approved">&radic;</span>·											<a href="./viewtopic.php?t=116258" class="torTopic bold tt-text">Рикки-Тикки-<wbr>Тави [1965 г., Анимационный<wbr>, TVRip]</a>
			</div>
	<div class="topicAuthor" style="padding-top: 2px;">
					<a href="./profile.php?mode=viewprofile&amp;u=313964" class="topicAuthor">ПУПС</a>
						</div>
		</td>
OkeaH вне форума Ответить с цитированием
Старый 19.01.2009, 09:17   #2
Квэнди
Старожил
 
Аватар для Квэнди
 
Регистрация: 13.12.2006
Сообщений: 3,859
По умолчанию

парсить можно либо используя pos,posex,copy или воспользоваться каким- нибудь компонентом- парсером HTML благо таких предостаточно и есть бесплатные.
ICQ не для вопросов, а для предложений. Для вопросов используйте форум
IRC канал клуба программистов|Мои статьи
Квэнди вне форума Ответить с цитированием
Ответ


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



Похожие темы
Тема Автор Раздел Ответов Последнее сообщение
Запретить копирование текста с html страницы xakzona HTML и CSS 1 18.01.2009 20:23
HTML Парсинг BaikalLord Помощь студентам 5 15.12.2008 08:20
Получение HTML-кода страницы Joltd Общие вопросы C/C++ 3 02.11.2008 17:54
Html страницы LineStown Работа с сетью в Delphi 3 11.04.2007 13:16
Нужно получить html код страницы NEOkill Работа с сетью в Delphi 2 01.03.2007 16:49