2013-04-01 4 views
1

У меня возникли проблемы с извлечением некоторых данных с веб-страницы с помощью Jsoup.Jsoup - extracting tag: namespace

Вот код:

<fb:comments-count href="" fb-xfbml-state="rendered" class=" fb_comments_count_zero"> 
<span class="fb_comments_count">0</span></fb:comments-count> 

И, я пытаюсь извлечь что 0 в fb_comments_count class.

+0

Как вы пытаетесь это сделать? Покажите свой код! – Cristian

+0

Когда я пытаюсь извлечь fb | comments-count, я не получаю внутренний класс вообще, даже если я разбираю всю веб-страницу. Я никогда не вижу этого внутреннего класса – copied

ответ

1

Вам действительно нужен тег fb:comments-count? Вы можете выбрать span.fb_comments_count напрямую, используя `doc.select (" span.fb_comments_count ").

Однако, если вам нужен внешний тег:

Document doc = ... 

Element commentsCount = doc.select("fb|comments-count > span.fb_comments_count").first(); 

System.out.println(commentsCount.text()); 

Это печатает значение согласующего тега первый. Если вам нужно все из них, то вместо этого используйте цикл.

+0

Я уже пробовал это, проблема в том, что когда я впервые получаю doc и печатаю его на консоль, я не вижу этого span.fb_comments_count, а все остальное нормально, по некоторым причинам jsoup wont проанализируйте это. – copied

+0

Что делать, если вы анализируете только html из своего вопроса? Тот же вопрос? Btw. Какую версию ты используешь? – ollo

+0

Я не знал, что вы можете использовать тег ns |, чтобы найти элементы по тегу в пространстве имен, хорошо знать http://jsoup.org/cookbook/extracting-data/selector-syntax –