2012-05-14 63 views
0

我有5行,簡單的Jsoup代碼解析一些字符串,它順利運行並返回一個數組列表,我想要的值,但是在Android模擬器和手機上,它只是甚至沒有提供任何錯誤都不會返回。相同的Jsoup代碼在Android和桌面上的行爲不同

那是整個代碼:

Document doc = Jsoup.connect(myURL).get(); 
Elements els = doc.select("div font a"); 
for (int i = 3; i < els.size(); i++) { 
    latestNews.add(els.get(i).text()); 
} 

在桌面上,它添加元素融入到數組列表,但在設備上,會發生什麼。任何人都可以幫忙嗎?

回答

2

您確定您從本網站接收到相同的HTML嗎?您應該調試並檢查您的doc變量,以確保它包含與您在網站上期望的相同的HTML。在分析完整網站時抓住移動網站的可能情況? (不知道Jsoup是否阻止獲取移動網站)。您可能需要設置用戶代理,以便收到網站的完整桌面版本。

ex。

Document doc = Jsoup.connect(myURL).userAgent("Mozilla").get(); 
+0

這些是我的eclipse上的android項目和NetBeans上的簡單嘗試項目完全相同的行。我不能看到如何調試,它不會給任何錯誤,而試圖解析.. – NotCamelCase

+0

在eclipse中放置一個斷點「Document doc = Jsoup.connect(myURL).get();」右鍵單擊你的Android項目,選擇Debug as,然後選擇「Android應用程序」,當你運行它時,它將在該行暫停。點擊「跳過」進入下一行。檢查「doc」變量(將鼠標懸停在它上面)。你可以看到它收到的HTML – dymmeh

+0

我現在不能調試它,因爲電話和計算機被搞砸了,但它只是很奇怪,我把簡單的你好,世界字符串後行文檔= =,它不打印出來。 – NotCamelCase

相關問題