URL规范化 (或URL规范化)是以一致的方式修改和标准化URL的过程。规范化过程的目标是将URL转换为规范化或规范的URL,因此可以确定两个语法不同的URL是否等价。
策略包括添加尾斜杠、https => http等。维基百科页面列出了许多。
在Java中有一种最喜欢的方法吗?也许是图书馆(纳奇?),但我是开放的。更小更少的依赖关系更好。
我现在会用手编码一些东西,并注意这个问题。
编辑:如果URL引用相同的内容,我想积极地将URL标准化为相同的URL。例如,我忽略了参数utm_source、utm_medium、utm_campaign。例如,如果标题相同,则忽略子域。
发布于 2010-06-07 22:36:35
您看过URI类吗?
http://docs.oracle.com/javase/7/docs/api/java/net/URI.html#normalize()
发布于 2011-05-25 09:37:16
因为您还想识别引用相同内容的URL,我发现WWW2007中的这篇文章非常有趣:不要在尘埃落定中爬行:使用相似文本的不同URL。它为你提供了一个很好的理论方法。
发布于 2012-08-02 16:22:54
不,标准库中没有任何东西可以这样做。规范化包括解码不必要的编码字符、将主机名转换为小写等。
例如,http://ACME.com/./foo%26bar变成:
http://acme.com/foo&bar
URI的normalize()做而不是做这件事。
https://stackoverflow.com/questions/2993649
复制相似问题