Jsoup выберите div с несколькими классами - PullRequest
29 голосов
/ 27 мая 2011

Я пытаюсь выбрать, используя Jsoup , <div>, который имеет несколько классов:

<div class="content-text right-align bold-font">...</div>

Синтаксис для этого, насколько я понимаю, должен быть:

document.select("div.content-text.right-align.bold-font");

Однако, по некоторым причинам, это не работает для меня.

Когда я пытаюсь использовать тот же самый синтаксис на JSFIDDLE , он работает без помех.

Работает ли выбор нескольких классов в Jsoup ?

(Я бы скорее узнал, что это ошибка в моем коде, чем выяснил, что это ограничение Jsoup:)

ОБНОВЛЕНИЕ (благодаря ответу ниже): Jsoup отлично работает с вышеупомянутым синтаксисом.

Ответы [ 2 ]

46 голосов
/ 27 мая 2011

Работает для меня с последней версией Jsoup (1.5.2).

String html = "<div class=\"content-text right-align bold-font\">foo</div>";
Document document = Jsoup.parse(html);
Elements elements = document.select("div.content-text.right-align.bold-font");
System.out.println(elements.text()); // foo

Так что, возможно, вы используете устаревшую версию Jsoup, которая выявляет ошибку, связанную с этим, или фактический HTML не делаетможет содержать <div>, как это.

1 голос
/ 31 июля 2014

Это будет полезно для вас в ближайшем будущем. Веселитесь.

Jsoup селекторы , jQuery селекторы

...