![]() |
|
|
|||||||
| Регистрация | << Правила форума >> | FAQ | Пользователи | Календарь | Поиск | Сообщения за сегодня | Все разделы прочитаны |
![]() |
|
|
Опции темы | Поиск в этой теме | Опции просмотра |
|
#1
|
||||
|
||||
|
Использую: TPerlRegEx
Задача: разобрать конечное количество однообразных блоков страницы. Пример блока: Код HTML:
Код ВСЕЙ страницы получаю по средствам str: = TIdHttp.Get('url.html'); (сомнительно, что это грамотно в этом случае )Собственно регулярка вот: Код HTML:
Вытащить надо естественно каждую колонку ( <td> ... </td> ) Код:
cNum := RegEx.Group[1]; \\ номер элемента cName := RegEx.Group[2]; \\ имя элемента Последний раз редактировалось Uniq!, 12.08.2012 в 21:19. |
|
#2
|
|||
|
|||
|
Цитата:
А не проще загрузить это дело в любой DOM-парсер и потом просто "пробежаться" по коллекции? |
| Этот пользователь сказал Спасибо lmikle за это полезное сообщение: | ||
Uniq! (13.08.2012)
| ||
|
#3
|
|||
|
|||
|
метод scan по всем td, получится список, пройтись циклом
Код:
if (i mod column_count) == 3 then //вроде 4 колонка //... |
|
#4
|
||||
|
||||
|
Цитата:
Спасибо за наводочку. Гугл и вики уже помогли чем смогли. От разнообразия глаза разбежались. Для простотырешения вопроса, посоветуйте? МБ даже есть уже включённый ДОМпарсер в XE2 ? |
|
#5
|
|||
|
|||
|
MSHTML не подходит?
А если код удовлетворяет спецификации xhtml, то можно просто в TXMLDocument засунуть. |
| Этот пользователь сказал Спасибо lmikle за это полезное сообщение: | ||
Uniq! (14.08.2012)
| ||