Как распечатать элемент в JSoup с помощью Java

Я написал функцию на Java для получения 10 ссылок по их идентификаторам с заданного URL-адреса. Идентификаторы тегов href в HTML-коде записываются как: id-1, id-2 и т. д. Я использую библиотеку JSoup. Мой код:

    public static void linkList(String URL)
       {
          Document doc=Jsoup.parse(URL);
          Element e;
          int eId=1;

              for(int x=1; x<=10; x++)
              {
                //element ids: id-1, id-2, etc.. 
                e = doc.getElementById("id-"+eId); 
               System.out.println(e); //print the link
               eId++; //increment the id to fetch the next
              }
       } 

Вывод, который я получаю, всегда null. Это мой первый раз, когда я использую JSoup, и когда я попытался задать вопрос на веб-сайте JSoup, он направил меня на Stack Overflow по любым вопросам, касающимся JSoup.


person Jury A    schedule 23.06.2012    source источник
comment
Я уверен, что с помощью источника просмотра я искал тег и нашел его.   -  person Jury A    schedule 23.06.2012


Ответы (1)


Пытаться

String elementText = e.text(); 
person vikiiii    schedule 23.06.2012
comment
После добавления вашей строки это сработало. НО, по некоторым причинам, которые я не понимаю, когда я заменил: Document doc=Jsoup.parse(URL); по: File input = new File(file.txt), затем следует:document doc = Jsoup.parse(input,UTF-8); в дополнение к вашей линии, это сработало. т. е. он работает при чтении из текстового файла, но не при чтении напрямую из URL, хотя идентификатор в обоих случаях одинаков. - person Jury A; 23.06.2012
comment
(Я знаю, что уже поздно, но все равно) Ну, это потому, что вам нужно подключиться к URL-адресу. Вы используете синтаксический анализ, когда хотите загрузить документ из строки. Когда вы хотите загрузить документ с URL-адреса, вы делаете Document doc = Jsoup.connect(url).get(); - person Alkis Kalogeris; 23.03.2013