2013-04-04 12 views
2

在我的項目中,它解析HTML頁面,然後使用DOM樹進行不同的操作,就像比較兩個URLS的模板一樣。如何使用Java中的JSOUP獲取DOM樹中任何網頁的動態內容

爲此,我正在使用JSOUP

但它無法加載DOM樹中的動態內容。

你能告訴我如何在Java中使用JSOUP加載動態內容,或者你能告訴我任何其他的方法嗎?

編輯編號1

由於given link顯示,它的工作原理採用PhantomJS在Java中Zombie.js。你能告訴我怎麼做到這一點?

編輯號2

我第一次嘗試使用硒來獲得動態頁面,代碼如下所示,

public static void main(String[] args) throws IOException { 

// Selenium 
WebDriver driver = new FirefoxDriver(); 
driver.get("ANY URL HERE"); 
String html_content = driver.getPageSource(); 
driver.get("ANOTHER URL HERE"); 
String html_content1 = driver.getPageSource(); 
driver.close(); 

// Jsoup makes DOM here by parsing HTML content 
Document doc1 = Jsoup.parse(html_content); 
Document doc2 = Jsoup.parse(html_content1); 

// OPERATIONS USING DOM TREE 
} 

但是,這需要大量的時間也優化了。現在按照您的指示,我轉移到HtmlUnit。 但我無法制作代碼,即將動態頁面源代碼轉換爲String,然後使用此String進一步使用Jsoup進行配對,幫助我使用HtmlUnit編寫該代碼。使用的HtmlUnit

代碼: -

package XXX.YYY.ZZZ.Template_Matching; 

import com.gargoylesoftware.htmlunit.WebClient; 
import com.gargoylesoftware.htmlunit.html.HtmlPage; 
import org.junit.Assert; 
import org.junit.Test; 

/** 
* 
* @author jhamb 
*/ 
public class HtmlUnit { 

    @Test 
    public void homePage() throws Exception { 
     final WebClient webClient = new WebClient(); 
     final HtmlPage page = webClient.getPage("http://www.jabong.com/Yepme-3-4Th-Sleeve-Printed-Blue-Top-Mksp-191481.html"); 

     Document ht = page.getOwnerDocument(); 
     System.out.println(ht); 

     webClient.closeAllWindows(); 
    } 

    public static void main(String[] args) throws Exception { 
     HtmlUnit htmlUnit = new HtmlUnit(); 
     htmlUnit.homePage(); 
    } 
} 
+0

你是如何解決這個問題的?你能得到你想要的嗎? – 2015-12-01 20:57:49

+0

爲了獲得動態內容,我使用了Selenium和GhostDriver。 – devsda 2015-12-08 10:39:09

+0

是的,我完成了這個項目。 – devsda 2015-12-08 10:39:28

回答

0

我很害怕,JSoup不會在這種情況下工作。

嘗試使用HtmlUnit。

+0

HtmlUnit與Jsoup同樣有效,用於解析和構建DOM樹嗎? HTMLUnit是否包含Jsoup包含的所有方法? 我們可以用Jsoup + Selenium做同樣的工作嗎? – devsda 2013-04-04 08:43:53

+0

請參閱上面的編輯1給我的任務。 – devsda 2013-04-04 08:51:46

+0

你能告訴我實施指南嗎?我不知道如何從HtmlUnit開始,這對獲取動態內容有何幫助。 – devsda 2013-04-04 11:33:10

相關問題