2013-05-30 170 views
-3

我很絕望,我試圖用Android和Jsoup(1.7.2)解析一個網站(www.proyectoglass.com),似乎代碼與其他網站(如www.google.com .com),但是當我嘗試解析該地址時,ListView沒有顯示任何內容。與Jsoup解析

static final String BLOG_URL = "http://www.proyectoglass.com/"; 
static final String TAG_titulo = "title"; 
ArrayList<String> copia=new ArrayList<String>(); 
@Override 
    public void onCreate(Bundle savedInstanceState) { 
    // set layout view 
    super.onCreate(savedInstanceState); 
    setContentView(R.layout.activity_main);   
    ListView listview = (ListView) findViewById(android.R.id.list); 
     try { 
      getTitles(); 
     } catch (Exception e) { 
      Log.e("Error", "Obtaining values"); 
     } 
     ArrayAdapter<String> arrayAdapter = new ArrayAdapter<String>(this,android.R.layout.simple_list_item_1,copia); 
     listview.setAdapter(arrayAdapter); 

} 
protected void getTitles() throws IOException{ 

    Document document = Jsoup.connect(BLOG_URL).get(); 

    for (Element element : document.select("a")) {   

     if(element.hasText())     
     { 
      System.out.println(element.text()); // print the element's text 
      copia.add(element.text()); 
     }     

    } 

}  

有人有什麼想法嗎?

非常感謝!

+2

'但我不得不解析那個。「 - 那它不起作用?它會崩潰嗎?它是否只是不返回你正在尋找的數據?就目前來看,這個問題並沒有包含足夠的相關信息予以回答。 – FoamyGuy

+0

對不起,英語不是我的主要語言,我覺得我沒有正確表達自己。我嘗試過不同的網站(如www.google.com),但它的工作原理,但我必須解析一個特定的網站(www.projeyectoglass.com),由於某種原因不起作用。 – Trifit

+0

我認爲這很簡單,該頁面只是嚴重依賴Javascript來創建動態佈局,因此,您無法使用HTML解析器解析它。 – kaderud

回答

0

答案很簡單:你試圖解析的頁面沒有任何a-tags,所以你不會得到任何元素返回,因此沒有添加到你的ListView

+0

你是對的,我的道歉,我使用Firebug來查看網頁代碼,並在網頁處理後顯示代碼(這是令人尷尬的)。 – Trifit