Как получить текст внутри тегов пользовательского интерфейса в jsoup? - PullRequest
0 голосов
/ 26 марта 2020

Мне нужно получить имена внутри тега «tag-editor-tag».

Вывод должен быть:

Имя1

Имя2

Name3

Name4

Name5

Как я могу выбрать эти имена в одиночку, используя Jsoup в Android?

<ul class="tag-editor">
   <li style="width:1px">&nbsp;</li>
   <li>
      <div class="tag-editor-spacer">&nbsp;,</div>
      <div class="tag-editor-tag">Name1</div>
      <div class="tag-editor-delete"><i></i></div>
   </li>
   <li>
      <div class="tag-editor-spacer">&nbsp;,</div>
      <div class="tag-editor-tag">Name2</div>
      <div class="tag-editor-delete"><i></i></div>
   </li>
   <li>
      <div class="tag-editor-spacer">&nbsp;,</div>
      <div class="tag-editor-tag">Name3</div>
      <div class="tag-editor-delete"><i></i></div>
   </li>
   <li>
      <div class="tag-editor-spacer">&nbsp;,</div>
      <div class="tag-editor-tag">Name4</div>
      <div class="tag-editor-delete"><i></i></div>
   </li>
   <li>
      <div class="tag-editor-spacer">&nbsp;,</div>
      <div class="tag-editor-tag">Name5</div>
      <div class="tag-editor-delete"><i></i></div>
   </li>
</ul>

Я пробовал это:

        Elements tag_elements = doc.select("div ul.tag-editor");
        tag_elements = tag_elements.select("li");
        for(Element elem : tag_elements){
            System.out.println(elem.select("div div").text());
        }

1 Ответ

0 голосов
/ 27 марта 2020

Сначала вы должны найти все элементы div с помощью class=tag-editor-tag, а затем извлечь их text:

Elements tag_elements = doc.select("div.tag-editor-tag");        
    for(Element elem : tag_elements){
        System.out.println(elem.text());
    }

Вывод:

Имя1
Имя2
Имя3
Имя4
Имя5

...