2011-07-04 159 views
4

我再次遇到問題,我無法找到源代碼,因爲它的隱藏或某事...當我的Java程序索引頁面時,它發現一切,但我需要的信息...我假設它隱藏的原因,但無論如何圍繞此?Java從網站獲取源代碼

它只是一堆在螢火蟲出現,但不顯示查看頁面源代碼時,或當我做下面

URL url = new URL("my url"); 
      URLConnection yc = url.openConnection(); 
      BufferedReader in = new BufferedReader(new InputStreamReader(yc.getInputStream())); 
      String inputLine; 
      while ((inputLine = in.readLine()) != null) { 

我真的不知道TR/TD標籤如何嘗試獲得信息,我需要...

回答

3

這種行爲的原因是因爲可能這些標籤動態注入DOM使用JavaScript,不是最初的HTML的一部分,這是你可以用URLConnection獲取。他們甚至可能使用AJAX創建。如果您想要獲取這些內容,您需要在服務器上使用JavaScript解釋器。

0

如果它們沒有顯示在頁面源代碼中,它們可能是通過Javascript代碼動態添加的。沒有辦法從你的服務器端腳本中獲得它們,但缺少一個JavaScript解釋器,這個開銷很大。

雖然標籤中的信息可能來自某處。爲什麼不跟蹤它,並從那裏直接抓住它?

+0

有趣......我怎麼會去尋找那個下來? –

+0

@Jon,安裝Firefox的FireBug,激活它並加載頁面;然後切換到FireBugs的網絡模式以查看所有生成的流量以及JavaScript生成的事件。 –

0

嘗試使用Jsoup。

Document doc = doc=Jsoup.parse("http:\\",10000); 
System.out.print(doc.toString()); 
+0

已經有...沒有工作 –