【问题标题】:Accessing a specific part of a URL访问 URL 的特定部分
【发布时间】:2014-05-12 02:56:47
【问题描述】:

我正在使用原始类型的 Java (1.1.2) 为 Lexmark 打印机编写 eSF 应用程序。从设备打印的问题是我需要向打印服务发送一个 URL,这使得打印字符串等细节变得困难。

对于我的项目,我正在尝试打印 XKCD 漫画的解释。这些解释是从explainXKCD.com 检索和格式化的。有什么方法可以访问 URL 的特定部分,例如网页的解释部分?这样我就可以链接解释并打印而不是链接整个网页并打印整个网页?我可以用来打印的另一种方法是从 URL 打印,如果我只能从原始 URL 的某个“子”URL 打印解释会容易得多。

我研究了 HTTPURLConnection 和 getSpecificHeader,但我不确定它们的作用。我还研究过创建一个仅包含字符串的临时 URL 并进行链接,但我不确定这会有多困难,或者它是否可能。

如果有人有任何想法,我只是在寻找正确的方向。

【问题讨论】:

  • 您想要网址的特定部分,还是该网址上可用的部分内容?
  • @chrylis 我想要部分内容可用,我想我应该更清楚一点。
  • 您尝试使用 Java 1.1 是因为它以某种方式或其他原因嵌入到打印机中?说真的,那甚至没有收藏。

标签: java url httpurlconnection


【解决方案1】:

您的问题与 HttpURLConnection 无关。在任何情况下,您都必须获取整个页面,然后剪切页面的 HTML 部分并打印出来。

有些库甚至可以帮助解析糟糕的 HTML,但我想(我几乎可以肯定)它们不适用于 Java 1.1。他们中的大多数都需要 Java 5 才能工作。

如果您可以确定源将来不会更改,您可以使用一些正则表达式魔术并剪切页面中有趣的部分。但是谁会将 HTML 渲染成 PostScript 或 PCL 之类的东西呢?

【讨论】:

  • @hgoebi 我已经完成了所有的屏幕抓取和解析以获得每个漫画的单独解释,只是我试图在运行时创建一个文件并从这个文件创建一个输入流.如果无法访问 URL 的各个部分,我就必须这样做。
  • 我不确定我是否理解正确:是下载网络资源(HTML 页面、图像)还是提取要打印的 HTML 页面部分的问题?并且请避免说“URL 的一部分”。 URL 的一部分(例如“example.com/abc/def?a=1"”将是“example.com/abc”。我想您的意思是“网页的一部分”...
  • 问题是要下载一个网络资源,我已经通过屏幕抓取从HTML页面中提取了信息。
  • 好的。然后尽量使用 HttpURLConnection。那里有很多教程。
猜你喜欢
  • 1970-01-01
  • 1970-01-01
  • 2022-01-22
  • 1970-01-01
  • 2018-09-20
  • 2023-04-04
  • 1970-01-01
  • 2019-12-13
  • 1970-01-01
相关资源
最近更新 更多