2015-07-01 50 views
0

我正在嘗試使用JSoup來解析通過Servlet生成的HTML文件。從我讀過的內容來看,我需要申報一份文件。當我運行代碼JSoup總是超時

Document doc = Jsoup.parse(URL,10000);

它總是超時,如果我增加超時時間,它會運行,直到它達到那個時間。當我放入Integer.MAX_VALUE時,它會永遠運行。我在Macbook Pro上使用Google Chrome。

我的問題是:

這是我的電腦還是我做錯了什麼?

有沒有辦法解決這個問題或解析HTML頁面的方法完全不同?

+0

請發佈什麼是鏈接給一點細節... –

回答

1

替代解決方案

由於Jsoup的文件中解釋,如果你有一個可訪問的URL比你能得到它的內容是這樣的:如果你在一個字符串,這是有HTML

Document doc = Jsoup.connect("http://en.wikipedia.org/").get(); 

你應該如何對其進行解析:

document = Jsoup.parse(htmlString); 

如果你在一個本地文件具有HTML則:

Document doc = Jsoup.parse(new File("FilePath"), "UTF-8", "http://example.com/"); 

您的解決方案 您使用Jsoup解析器的方式是正確的,但問題是link或許如果你能提供有關的細節,然後我們就可以找出什麼地方出了錯。

確保您的Servlet生成的任何HTML都可訪問,如果它是您的link應該是該Servlet的URL

+0

第一個沒有工作,我的html在程序中生成,所以沒有字符串,沒有文件 – Kingston12

+0

讓我們看看,生成輸出的servlet,它映射到一些URL,如http:// localhost:8084/yourproject/someservletcall?如果是的話,你必須使用這個URL,你可以分享你的代碼中的'link'是什麼? –