我正在尝试使用JSoup来解析我通过Servlet生成的HTML文件。根据我的阅读,我需要申报一份文件。当我运行代码时
Document doc = Jsoup.parse(URL,10000);
总是超时,如果我增加超时时间,它会一直运行直到达到那个时间。当我输入Integer.MAX_VALUE
时,它只会永远运行。我在macbook pro上使用谷歌浏览器。
我的问题是:
这只是我的电脑还是我做错了什么?
有没有办法解决这个问题或解析完全不同的HTML页面?
答案 0 :(得分:1)
替代解决方案
如Jsoup文档中所述,如果您有可访问的URL,则可以通过这种方式获取其内容:
Document doc = Jsoup.connect("http://en.wikipedia.org/").get();
如果您在字符串中包含HTML,则应该如何解析它:
document = Jsoup.parse(htmlString);
如果您在本地文件中有HTML,则:
Document doc = Jsoup.parse(new File("FilePath"), "UTF-8", "http://example.com/");
您的解决方案
您使用Jsoup解析器的方式是正确的,但问题在于link
,如果您可以提供有关它的详细信息,那么我们就可以找出问题所在。
确保您的Servlet生成的任何HTML都可以访问,如果它的link
应该是该Servlet的URL
。