![]() |
|
Модераторы: Poseidon, Snowy, bems, MetalFan |
![]()
|
|
| GrafCharodey |
|
|||
![]() Новичок Профиль Группа: Участник Сообщений: 28 Регистрация: 14.12.2006 Репутация: нет Всего: нет |
Здравствуйте!
Мне понадобилось написать программу которая выдерала бы текст из html файла без тегов. Причём учитывая тот текст который содержится в alt. Существуют ли функции распознавания тегов, или что либо похожее? Или же всё же придётся разрабатывать алгоритм с самого начала? Заранее благодарен! |
|||
|
||||
| Sartorius |
|
|||
![]() Эксперт ![]() ![]() ![]() Профиль Группа: Завсегдатай Сообщений: 1568 Регистрация: 18.7.2006 Где: Ivory tower Репутация: нет Всего: 37 |
Да алгоритм-то тут простой : выдаешь на выход все , пока не встретишь "<" , а потом крутишь до ">" и снова все на выход. Ну аlt отдельно придется обработать.
|
|||
|
||||
| GrafCharodey |
|
|||
![]() Новичок Профиль Группа: Участник Сообщений: 28 Регистрация: 14.12.2006 Репутация: нет Всего: нет |
Ну в принципе да... Спасибо...
Единственное что там могут встречаться ключевые символы, но и они начинаются с &. |
|||
|
||||
| GrafCharodey |
|
|||
![]() Новичок Профиль Группа: Участник Сообщений: 28 Регистрация: 14.12.2006 Репутация: нет Всего: нет |
Всётаки алгоритм по просмотру '<' '>' не очень подходит, достаточно взглянуть на исходный код яндекса, много ключевых слов без использования скобочек... Есть ещё соображения на этот счёт?
|
|||
|
||||
| TrillerMan |
|
|||
|
Новичок Профиль Группа: Участник Сообщений: 46 Регистрация: 20.12.2006 Репутация: нет Всего: нет |
Есть вот там всё есть bsalsa.com о результатах сообщи))если буш заниматся работой с этими компонентами тукай будем вместе разбиратся я с ними тоже разбираюсь
|
|||
|
||||
| GrafCharodey |
|
|||
![]() Новичок Профиль Группа: Участник Сообщений: 28 Регистрация: 14.12.2006 Репутация: нет Всего: нет |
TrillerMan, спасибо, установил... Мда разбираться там надо основательно))
У меня немного изменилось ТЗ, мне не только надо выдрать текст, но и разбить его на типы: заголовки, постой текст, ссылки и т.д. Сомневаюсь что существуют такие компоненты, по крайней мере там я ничего похожего не нашёл (или плохо смотрел)... Так что пока занимаюсь разработкой алгоритма. Проблема в том что поиск определёных тегов по всему тексту кропотливая роботёнка. Не сталкивался с чем нибудь похожим? |
|||
|
||||
| W4FhLF |
|
|||
![]() found myself ![]() ![]() ![]() ![]() Профиль Группа: Участник Клуба Сообщений: 2831 Регистрация: 2.12.2006 Репутация: 6 Всего: 121 |
Если ты приведёшь примеры исходного html текста со всеми вариантами исполнения, а потом укажешь, что тебе из этого нужно получить, то нам будет проще тебе помочь.
Я на данный момент вижу несколько вариантов: -Загрузить страницу в TWebBrowser и далее по кусочкам её разобрать отталкиваясь от COM интерфейсов. -Использовать регулярные выражения для парсинга и проверки формата текста на соответствие различным условиям(тег, ссылка, заголовок, текст) -------------------- "Бог умер" © Ницше "Ницше умер" © Бог |
|||
|
||||
| GrafCharodey |
|
|||
![]() Новичок Профиль Группа: Участник Сообщений: 28 Регистрация: 14.12.2006 Репутация: нет Всего: нет |
W4FhLF, HTML текст может быть совершенно любой, то есть учитывая грамотность автора мне надо его обработать. В данный момент в качестве подопытного я использую главную страничку Яндекса. В начале пытаюсь привести код к более менее приемлемому виду а потом начинаю поиск нужных тегов. Как уже говорил нужно на выходе получить все заголовки разных уровней, обычный текст, ссылки, титлы и содержимое alt. Страничку в TWebBrowser я загружаю и после приступаю к обработке...
В принципе примерный алгоритм я уже для себя составил, но кто знает где я натолкнусь на препятствие. Использую как раз названия тегов для парсинга. Буду очень рад услышать ваши предложения. Заранее благодарен! |
|||
|
||||
| MetalFan |
|
|||
![]() Аццкий Сотона ![]() ![]() ![]() ![]() Профиль Группа: Комодератор Сообщений: 3815 Регистрация: 2.10.2006 Где: Moscow Репутация: 62 Всего: 128 |
А зачем в TWebBrowser?
может сразу в IHTMLDocument2 ??? -------------------- There are always someone smarter than you... |
|||
|
||||
| Sansa |
|
|||
![]() Бывалый ![]() Профиль Группа: Участник Сообщений: 173 Регистрация: 18.10.2006 Где: Королев Репутация: 3 Всего: 6 |
По твоему ТЗ похоже нужен простой конвертор (фильтр) HTML->Doc (RTF). Примеров - масса.
--------------------
- Здравствуйте, я Ваш патологоанатом |
|||
|
||||
| GrafCharodey |
|
|||
![]() Новичок Профиль Группа: Участник Сообщений: 28 Регистрация: 14.12.2006 Репутация: нет Всего: нет |
Sansa, Спасибо, испытал... Только этот код совершенно не то выполняет. Как я посмотрел он выводит размеры шрифтов, шрифты, цвета, которые используются на страничке. Текст не выводит вобще... Но тем не менее полезная вещь, спасибо!!!
MetalFan, Он нужен для удобства работы. |
|||
|
||||
| W4FhLF |
|
|||
![]() found myself ![]() ![]() ![]() ![]() Профиль Группа: Участник Клуба Сообщений: 2831 Регистрация: 2.12.2006 Репутация: 6 Всего: 121 |
Ну вот как раз для парсинга html кода я бы и использовал регулярки, сказать что-то более конкретное я не могу, ибо нехватает исходных данных
-------------------- "Бог умер" © Ницше "Ницше умер" © Бог |
|||
|
||||
| Elfebet |
|
|||
![]() Опытный ![]() ![]() Профиль Группа: Участник Сообщений: 545 Регистрация: 15.5.2006 Где: Украина. Запорожь е. Репутация: 2 Всего: 14 |
данный вопрос уже поднимался, вот ссылки
http://forum.vingrad.ru/index.php?showtopi...st&p=927634 http://forum.vingrad.ru/index.php?showtopi...st&p=873704 -------------------- Программист не должен всё знать... он должен знать где можно посмотреть |
|||
|
||||
| Golden Hands |
|
||||
![]() Золотой ![]() ![]() ![]() ![]() Профиль Группа: Участник Клуба Сообщений: 2023 Регистрация: 23.1.2005 Где: Екатеринбург Репутация: нет Всего: 83 |
-------------------- Мы обречены... но только на победу! Настанет день, и мы построим новый дом. Внесем в него тепло, что сохранить сумели, И воскресим все то, что в нас когда-то умерло... © Тень Света |
||||
|
|||||
| MetalFan |
|
|||
![]() Аццкий Сотона ![]() ![]() ![]() ![]() Профиль Группа: Комодератор Сообщений: 3815 Регистрация: 2.10.2006 Где: Moscow Репутация: 62 Всего: 128 |
ЗАЧЕМ тащить полностью TWebBrowser, если можно обойтись HTMLDocument'ом? или страничку еще отображать нужно?!
-------------------- There are always someone smarter than you... |
|||
|
||||
![]()
|
| Правила форума "Delphi: Общие вопросы" | |
|
|
Запрещается! 1. Публиковать ссылки на вскрытые компоненты 2. Обсуждать взлом компонентов и делиться вскрытыми компонентами
Если Вам понравилась атмосфера форума, заходите к нам чаще! С уважением, Snowy, MetalFan, bems, Poseidon, Rrader. |
| 0 Пользователей читают эту тему (0 Гостей и 0 Скрытых Пользователей) | |
| 0 Пользователей: | |
| « Предыдущая тема | Delphi: Общие вопросы | Следующая тема » |
|
|
По вопросам размещения рекламы пишите на vladimir(sobaka)vingrad.ru
Отказ от ответственности Powered by Invision Power Board(R) 1.3 © 2003 IPS, Inc. |