我有兴趣从网站的源代码中提取特定内容。我可以使用JSoup,使用
获取整个源代码Document doc;
doc = Jsoup.connect("http://example.com").get();
Element divs = document.getElementById("importantDiv");
然而,问题是我需要每天做大约20000次,以便能够获得div中发生的所有更改。每次创建整个文档都会占用大量的网络带宽,我想避免这种情况。有没有办法能够提取所需的元素而无需在客户端重新创建整个文档。
注意:代码段是一个示例,而不是我需要提取的实际URL或ID。
答案 0 :(得分:0)
我不相信您可以请求网页的特定部分。 JSoup基本上是一个Web客户端类,Web客户端无法控制服务器发送它的内容。服务器是指示发送内容的服务器,因此您无法在不请求整个网页的情况下真正请求网段的一部分。
您是否可以访问此网页,或者它是外部网站?
答案 1 :(得分:0)
如果您无法控制服务器端,则无法执行此操作。您需要下载完整的HTML。但请注意,它只是HTML,而不是其他资源,如样式表,图像,javascripts等。
为了节省带宽,您需要在服务器中安装一些代码,以便它只提供所需的信息。
答案 2 :(得分:0)
看一下URLConnection类,你可以用它来打开一个到URL的连接获取连接的输入流并只读取你需要的字节数,这样就可以了,你不会有下载整个文档,但遗憾的是,您将无法从偏移量开始下载文档。您将始终必须从头开始下载文档。