只返回我想要的某些元素的Java Http请求

只返回我想要的某些元素的Java Http请求,java,html,http,dom,web-scraping,Java,Html,Http,Dom,Web Scraping,Java中是否有一种方法可以对一个网页发出HTTP请求,而该网页的响应将只是我想要的某些特定元素,而不是整个文档 例如,如果我请求一个名为“example”的,则响应将只是该元素,而不是页面上存在的剩余绒毛,我不需要这些绒毛 我看到的大多数方法都涉及获取整个HTML页面,然后对其进行解析。我想看看页面,然后拿出我想要的div,作为回应。我正在处理的页面包含很多我想忽略的广告内容。这是不可能的。web的工作方式是向页面发送HTTP GET请求,然后返回整个页面。如何使用它(解析等)取决于您,但您对

Java中是否有一种方法可以对一个网页发出HTTP请求,而该网页的响应将只是我想要的某些特定元素,而不是整个文档

例如,如果我请求一个名为
“example”
,则响应将只是该元素,而不是页面上存在的剩余绒毛,我不需要这些绒毛


我看到的大多数方法都涉及获取整个HTML页面,然后对其进行解析。我想看看页面,然后拿出我想要的div,作为回应。我正在处理的页面包含很多我想忽略的广告内容。

这是不可能的。web的工作方式是向页面发送HTTP GET请求,然后返回整个页面。如何使用它(解析等)取决于您,但您对HTTP协议没有任何影响


但是,如果您使用自己实现的自定义服务器/API托管网页,则可以实现这一点。您可以发送一个带有特定参数的请求,指定所需内容,并且可以解析html页面服务器端。

这是不可能的。web的工作方式是向页面发送HTTP GET请求,然后返回整个页面。如何使用它(解析等)取决于您,但您对HTTP协议没有任何影响


但是,如果您使用自己实现的自定义服务器/API托管网页,则可以实现这一点。您可以发送一个带有特定参数的请求,指定所需内容,并且可以解析html页面服务器端。

不,这是不可能的。HTTP Get/post调用将返回完整的网页信息,但不会返回其中的一部分

不,这是不可能的。HTTP Get/post调用将返回完整的网页信息,但不会返回其中的一部分

与页面内容无关,它只是一个管理服务器请求和响应的协议

我明白你想做什么,你只是问了一个稍微有点错误的问题。不用担心HTTP,它只是管理服务器请求和响应(GET、PUT、POST、HEAD、OPTIONS)的协议

您描述的问题只能在内容检索完成后才能处理。您需要使用文档对象模型(DOM),这是基础。这意味着你将需要熟悉自己,也许也需要

您所要求的功能可以通过多种方式实现,但通常可以归结为一系列非平凡的操作:

  • 检索URL的页面内容(包括协商编码、HTTP重定向和协议更改)
  • 清理格式不正确的内容(即未关闭或不正确嵌套的标签,例如使用)
  • 将页面内容解析为DOM
  • 遍历DOM以查找您感兴趣的节点(例如,通过DOM或XPath)
  • 构建输出DOM(例如,通过类)
  • 将输出DOM写入文件(和的组合)
  • 虽然可以从头开始实现这一功能,但已经有一些开源项目具有这一功能,请尝试类似的方法。

    与页面内容无关,它只是一个管理服务器请求和响应的协议

    我明白你想做什么,你只是问了一个稍微有点错误的问题。不用担心HTTP,它只是管理服务器请求和响应(GET、PUT、POST、HEAD、OPTIONS)的协议

    您描述的问题只能在内容检索完成后才能处理。您需要使用文档对象模型(DOM),这是基础。这意味着你将需要熟悉自己,也许也需要

    您所要求的功能可以通过多种方式实现,但通常可以归结为一系列非平凡的操作:

  • 检索URL的页面内容(包括协商编码、HTTP重定向和协议更改)
  • 清理格式不正确的内容(即未关闭或不正确嵌套的标签,例如使用)
  • 将页面内容解析为DOM
  • 遍历DOM以查找您感兴趣的节点(例如,通过DOM或XPath)
  • 构建输出DOM(例如,通过类)
  • 将输出DOM写入文件(和的组合)

  • 虽然可以从头开始实现这个功能,但已经有一些开源项目具有此功能,请尝试类似的方法。

    好的,我理解。所以说真的,如果不重写HTTP的工作原理,这是不可能的。因此,如果不重新编写HTTP的工作原理,这是不可能的。