Версия для печати темы
Нажмите сюда для просмотра этой темы в оригинальном формате
Форум программистов > Java: Общие вопросы > HTML parser


Автор: SmaLL 12.3.2003, 17:28
Доброго времени суток!

У меня такая задача:
Есть HTML-документ. Мне нужно извлечь из него текст (контент), который отображает после форматирования веб-браузер. Т.е. Мне нужно проигнорировав все теги и форматирование получить сам текст.

Есть какие-либо соображения?

P.S. Попробовал сунуться в javax.swing.text.html.* и javax.swing.text.html.parser.*, но что-то я не совсем понял логику тамошних классов.

Автор: AntonSaburov 12.3.2003, 18:58
Цитата
P.S. Попробовал сунуться в javax.swing.text.html.* и javax.swing.text.html.parser.*, но что-то я не совсем понял логику тамошних классов.


Сунулся ты в принципе верно. Но то, что поставляется в поставке не высокоинтеллектуально biggrin.gif

В поставке идет javax.swing.text.html.parser.Parser.
Он умеет парсить HTML и вызывает определенные методы при обработке тагов. Но проблема в том, что парсер заточен на HTML, который правильно сделан. Т.е. с открывающими и закрывающими тагами. Фактически это должен быть XML-документ. Да и обработка напоминает SAX-парсер для XML.
Но большинство страничек таких правил не соблюдают. Так что можно пробовать сделать более умный парсер основываясь на стандартном.

попробуй поискать в инете - может что интересное найдешь. Я занимался этим вопросом крайне мало - так, смотрел. У меня HTML формировался автоматом и очень правильный smile.gif, потому мне хватало стандарта.

Автор: SmaLL 13.3.2003, 17:33
Так, нашЁл ответ в другом форуме.
Запостю и сюда, вдруг кому-то интересно будет

Код
   Reader reader = new FileReader( "myfile.html" );
   HTMLEditorKit kit = new HTMLEditorKit( );
   Document doc = kit.createDefaultDocument( );
   doc.putProperty( "IgnoreCharsetDirective", new Boolean( true ) );
   kit.read( reader, doc, 0 );
   System.out.println( doc.getText( 0, doc.getLength( ) ) );


(с) WFrag

Автор: unkis 22.2.2005, 15:13
Ребята помогите весь интернет перерыл ничего не нашёл. что же делать если html неправидьный

Автор: unkis 22.2.2005, 15:51
ребята нашёл, только помогите разобраться проблеммы с английским, если можно пример.

http://www.apache.org/~andyc/neko/doc/html/index.html
http://jtidy.sourceforge.net/index.html


Зарания благодарен
smile

Powered by Invision Power Board (http://www.invisionboard.com)
© Invision Power Services (http://www.invisionpower.com)