仅打印绝对 URL

Posted

技术标签:

【中文标题】仅打印绝对 URL【英文标题】:Print only absolute URLs 【发布时间】:2014-03-07 06:16:29 【问题描述】:

我编写了一个简单的 Java Web Crawler,它允许用户输入任何网页,它会搜索整个页面并将链接作为字符串提取出来。我没有使用像 Jsoup 这样的包。我的问题是,我如何只打印绝对 URL 而不是相对 URL 和绝对 URL?

【问题讨论】:

【参考方案1】:

检查 srchref 属性以查看它是绝对的、相对的还是协议相对的 (//***.com/file)。解析页面的 URL。如果标记是协议相关的,则使用解析的页面 URL 中的协议,然后附加属性的内容。如果它是相对的,则从原始 URL 中去除查询字符串和片段 IF,并“附加”相对部分。请注意,相对 URL 可能类似于 /foofoofoo/bar./../../bar/../foo,因此您可能需要在打印之前解析路径遍历。

编辑:

看看URL 和Commons URL Builder。他们都会有所帮助。

【讨论】:

以上是关于仅打印绝对 URL的主要内容,如果未能解决你的问题,请参考以下文章

bash 脚本 - 打印所有正在运行的 jar 的绝对路径

从绝对 URL 读取图像文件时的 ENCODING_ERR

如何配置 autotools/gcc 以使用绝对路径打印警告和错误?

Cordova 打印插件仅搜索打印机(在同一网络中具有启用 wifi 的打印机),不打印或不给出任何错误

打印文件编写器仅写入 1 个数字

POST req:仅支持绝对 URL