#java #html #парсер
Нужно пропарсить вебстраницу и извлечь из нее путь к картинке. Никак не могу разобраться с классом HTML Parser. Нужен пример - не могу найти в нете.
Ответы
Ответ 1
А что сложного то? У них самая обыкновенная документация в JavaDoc. Но даже там можно найти почти все, что нужно. Например: Typical usage of the parser is: Parser parser = new Parser ("http://whatever"); NodeList list = parser.parse (null); // do something with your list of nodes. А потом еще немного посмотреть: NodeList parse(NodeFilter filter) NodeFilter -> вот тут Все, по-моему, слишком просто. Не говоря уже об этом bin/parser http://website_url [tag_name] where tag_name is an optional tag name to be used as a filter, i.e. A - Show only the link tags extracted from the document IMG - Show only the image tags extracted from the document TITLE - Extract the title from the document NOTE: this is also the default program for the htmlparser.jar, so the above could be: java -jar lib/htmlparser.jar http://website_url [tag_name] UPD: public static void main(String[] args) { try { Parser parser = new Parser("http://www.alliance-bags.ru/catalog.php?tov=576"); parser.setEncoding("windows-1251"); NodeFilter atrb1 = new TagNameFilter("IMG"); NodeList nodeList = parser.parse(atrb1); for(int i=0; iОтвет 2
Попробуйте jsoup. Мне очень понравился.Ответ 3
Для простых случаев можно воспользоваться стандартным API Java. Например, достать файл через HttpURLConnection и найти необходимое с помощью регулярных выражений.Ответ 4
jsoup: Java HTML Parser: Document doc = Jsoup.connect("http://en.wikipedia.org/").get(); Elements newsHeadlines = doc.select("#mp-itn b a");Ответ 5
Можно использовать стандартные для Java инструменты. Зачем для извлечения пути к картинке использовать дополнительную либу? Если необходимо единоразово сделать, то можно использовать DOM и XPath. Если же необходимо обработать кучу больших документов, то лучше использовать SAX. Единожды потратив время на разбор этих методов больше никогда не будете знать проблем с разбором не только HTML, но и любых XML документов. Использование же регулярных выражений для разбора HTML не есть хорошая практика - просто в силу особенности гибкости и необязательности синтаксиса HTML.Ответ 6
Посмотрите на этот. Довольно простой принцип работы, поддерживает невалидные страницы. Есть коллекция объектов, замапленых на теги. Очень удобно. Если есть вопросы - спрашивайте.
Комментариев нет:
Отправить комментарий