Модераторы: Poseidon, Snowy, bems, MetalFan
  

Поиск:

Ответ в темуСоздание новой темы Создание опроса
> Разбор(парсинг) таблицы <table></table>, Как это делается? 
:(
    Опции темы
ЧеловекБорща
Дата 28.1.2011, 23:45 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Шустрый
*


Профиль
Группа: Участник
Сообщений: 94
Регистрация: 5.6.2010

Репутация: нет
Всего: нет



Всем привет!

вопрос по разброру таблиц html'а <table></table>

Есть таблица(кликабельно):
Код

<div align='center'>
<table border=1 style='font-size:10pt; border-collapse:collapse;' cellpadding=2 width='100%'> <tr>
        <td width='30%'><a href="compiler.php?go=search&order=title&by=1&mod_id=17"><b>Plugin Name</b></a></td>
        <td width='10%'><a href="compiler.php?go=search&order=username&by=1"><b>Author</b></a></td>
        <td width='5%'><a href="compiler.php?go=search&order=mod_id&by=1&mod_id=17"><b>Mod</b></a></td>
        <td width='20%'><a href="compiler.php?go=search&order=cat_id&by=1&mod_id=17"><b>Category</b></a></td>
 </tr> 
       
<td><a href='http://forums.alliedmods.net/showthread.php?p=850110' target='_blank'>VS_Afion</a></td>
<td>Afion</td>
<td><img src='images/vs.gif' title=''></td><td>General Purpose</td>
</tr>

<td><a href='http://forums.alliedmods.net/showthread.php?p=54048' target='_blank'>Vampire slayer stats Beta</a></td>
<td>EKS</td>
<td><img src='images/vs.gif' title=''></td>
<td>Statistical</td>
</tr>
</table>



Для простого вынимания тенкста из тегов использую функцию:
Код

function ParseHTMLText(OpenTag, TagsData, CloseTag: string): string;
var
  OTag, 
  CTag: Integer; 
begin
  Result := '';
  if (OpenTag = '') or (TagsData = '') or (CloseTag = '') then
    Exit;
  OTag := AnsiPos(OpenTag, TagsData);
  if (OTag = 0) then
    Exit
  else
    OTag := OTag + Length(OpenTag);
  TagsData := Copy(TagsData, OTag, Length(TagsData) - OTag + 1);
  CTag := AnsiPos(CloseTag, TagsData);
  if CTag > 0 then
    Result := Copy(TagsData, 1, CTag - 1);
end;


Но с таблицей проблема. Как правильно использовать функцию на таблице непонимаю=(

Возникли вопросы:
Как получить число строк(элементов) таблицы? 
Как правильно разобрать таблицу, и расфосовать все элементы колонок таблицы по колонкам TlistView? 


Это сообщение отредактировал(а) ЧеловекБорща - 28.1.2011, 23:48
PM MAIL   Вверх
Akella
Дата 29.1.2011, 14:52 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Творец
****


Профиль
Группа: Модератор
Сообщений: 18485
Регистрация: 14.5.2003
Где: Корусант

Репутация: 36
Всего: 329



Вот поясни мне, как парсинг (синтаксический анализ) относится к сетевому программированию? У тебя проблема с FTP, c Indy, c ICS???
PM MAIL   Вверх
ЧеловекБорща
Дата 30.1.2011, 22:21 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Шустрый
*


Профиль
Группа: Участник
Сообщений: 94
Регистрация: 5.6.2010

Репутация: нет
Всего: нет



Значит ранее у меня было неправильное пониание "Парсинг'a". 

Ну допустися я получил код страницы, и даже вытащил таблицу <table> </table> .
Как её разобрать? 
PM MAIL   Вверх
MetalFan
Дата 30.1.2011, 23:11 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Аццкий Сотона
****


Профиль
Группа: Комодератор
Сообщений: 3815
Регистрация: 2.10.2006
Где: Moscow

Репутация: 62
Всего: 128



ЧеловекБорща, парень, тебеж говорят, ты разделом то ошибся)
а по теме: не изобретай велосипед - используй регулярки (регулярные выражения)


--------------------
There are always someone smarter than you...
PM MAIL   Вверх
Akella
Дата 31.1.2011, 23:21 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Творец
****


Профиль
Группа: Модератор
Сообщений: 18485
Регистрация: 14.5.2003
Где: Корусант

Репутация: 36
Всего: 329



ЧеловекБорща, погугли на тему: парсинг HTML
PM MAIL   Вверх
bagos
Дата 2.2.2011, 03:19 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Опытный
**


Профиль
Группа: Участник
Сообщений: 275
Регистрация: 17.6.2006

Репутация: нет
Всего: 1



Регулярки - сила, а если лень вникать как они работают, то пиши функции по разбору и получению тех или иных данных. "Разобрать таблицу" - весьма расплывчато. Какие конкретно данные из таблицы тебе нужно получить?
PM MAIL   Вверх
  
Ответ в темуСоздание новой темы Создание опроса
Правила форума "Delphi: Общие вопросы"
SnowyMetalFan
bemsPoseidon
Rrader

Запрещается!

1. Публиковать ссылки на вскрытые компоненты

2. Обсуждать взлом компонентов и делиться вскрытыми компонентами

  • Литературу по Дельфи обсуждаем здесь
  • Действия модераторов можно обсудить здесь
  • С просьбами о написании курсовой, реферата и т.п. обращаться сюда
  • Вопросы по реализации алгоритмов рассматриваются здесь
  • 90% ответов на свои вопросы можно найти в DRKB (Delphi Russian Knowledge Base) - крупнейшем в рунете сборнике материалов по Дельфи


Если Вам понравилась атмосфера форума, заходите к нам чаще! С уважением, Snowy, MetalFan, bems, Poseidon, Rrader.

 
0 Пользователей читают эту тему (0 Гостей и 0 Скрытых Пользователей)
0 Пользователей:
« Предыдущая тема | Delphi: Общие вопросы | Следующая тема »


 




[ Время генерации скрипта: 0.0799 ]   [ Использовано запросов: 22 ]   [ GZIP включён ]


Реклама на сайте     Информационное спонсорство

 
По вопросам размещения рекламы пишите на vladimir(sobaka)vingrad.ru
Отказ от ответственности     Powered by Invision Power Board(R) 1.3 © 2003  IPS, Inc.