从HttpClient4的Apache和Java请求中获取Html页面的一部分的最佳方法是什么?具体来说,我需要一张表(它的内容) 解释,示例或链接会很棒。
答案 0 :(得分:2)
您可以做的是从响应中创建一个DOM对象,因为它应该是一个有效的文档。
执行类似
的操作DocumentBuilderFactory factory = DocumentBuilderFactory.newInstance();
DocumentBuilder builder = factory.newDocumentBuilder();
Document document = builder.parse(/* your input stream from response */);
Element tableElement = document.getElementById("the-table-id");
答案 1 :(得分:1)
Adrian Rodriguez的方式并不错,但不幸的是,只有当HTML是XHTML(即有效格式化的XML)时它才会起作用。您可以使用名为Web Harvest的库(在sourceforge.net上可用)来刮取页面并以声明方式提取表,而不是编写代码来执行此操作。它还包括构建脚本中的阶段,用于根据需要清理页面。我强烈建议使用它,因为它是一个更强大的解决方案,你想要的,特别是如果你将来需要刮掉其他页面。