Как разобрать для изображения SRC с помощью JSOUP? - PullRequest
2 голосов
/ 19 сентября 2011

Я пытаюсь проанализировать это содержимое с помощью jsoup.

<div class="imageInlineCenter" style="width: 468px;" align="center"><img src="http://xbox360media.ign.com/xbox360/image/article/117/1171345/MW3_3_468_1306710207.jpg" align="middle" border="0" height="263" width="468"><div class="inlineImageCaption" style="width: 468px;">Your subwoofer will get a break during the stealthy start of the 'Mind the Gap' level, but only briefly.</div></div>

Я хочу только проанализировать тег img src, чтобы получить URL-адрес изображения.

Вот то, с чем я работаю правильносейчас ..

  try{
                  Elements img = jsDoc.select("div.imageInlineCenter");
                  String imgSrc = img.attr("img src");
                  System.out.println(imgSrc);



                 }
                 catch(Exception e){

                     Log.e("UPCOMING", "Couldnt retrieve the text");
                           }

Ничего не печатается.Вместо этого я получаю сообщение, что он не может получить его.

Как я могу разобрать это?

РЕДАКТИРОВАТЬ:

Вот код, который яusing.

Не отображается сообщение о перехвате или system.out.

   try {
                 jsDoc = Jsoup.connect(url).get();

                  try{
                      Elements img = jsDoc.select("div.imageInlineCenter img[src]");
                      String imgSrc = img.attr("src");
                      System.out.println(imgSrc);





                     }
                     catch(Exception e){

                         Log.e("UPCOMING", "Couldnt retrieve the text");
                               }

1 Ответ

6 голосов
/ 19 сентября 2011

Это неправильно:

String imgSrc = img.attr("img src");

img является тегом , а не атрибутом. src - это, конечно, атрибут.

Не могу проверить это прямо сейчас, но как насчет чего-то вроде ...

Elements img = jsDoc.select("div.imageInlineCenter img[src]");
String imgSrc = img.attr("src");
System.out.println(imgSrc);

Редактировать 1
Относительно "это, казалось, не работало ...": это, казалось, работало хорошо для меня. Как вы это тестируете?

import java.io.IOException;
import org.jsoup.Jsoup;
import org.jsoup.nodes.Document;
import org.jsoup.select.Elements;

public class Foo003 {
   private static final String TEST_URL_1 = "http://xbox360.ign.com/" +
        "articles/117/1171345p1.html";

   public static void main(String[] args) {
      Document jsDoc = null;

      try {
         jsDoc = Jsoup.connect(TEST_URL_1).get();
         // System.out.println(jsDoc);

         Elements img = jsDoc.select("div.imageInlineCenter img[src]");
         String imgSrc = img.attr("src");
         System.out.println(imgSrc);

      } catch (IOException e) {
         e.printStackTrace();
      }
   }
}
...