java - 转换和验证来自不受信任来源的 url

标签 java url html-parsing

我正在解析网页并收集 href。由于网页是不受信任的来源,因此它可能包含具有无效语法或非 ASCII 符号的链接。所以,据我了解,我需要

1) 空格和非ascii符号与其他符号的转换

2) 验证步骤 1 生成的字符串(有效性标准:此 url 可以在浏览器中键入,并且能够检索 url 表示的页面,此类 url 可以由 URL/URI 构造函数构造,然后检索适当的页面 - 我可以在 firefox 中键入一些 url,但无法在 java 中构造实例)

3) 从 (1) 构造 java.net.URL/URI(如果有效)

我找到了两个验证库:12 (您更喜欢哪一个?)但是第一个子句没有足够的库(像 java.net.URLDecoder/URLEncoder 这样的工具)不适用于此目的。

最佳答案

你不能尝试在 try/catch 语句中从中创建一个 URL/URI 吗?我认为类的构造函数会自动处理验证

关于java - 转换和验证来自不受信任来源的 url,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/6281540/

相关文章:

php - 将 curl 命令转换为 php curl

url - 如何从Grails中的URL删除应用程序名称和端口?

php - 在 PHP 中删除表上的行跨度

java - 无法从 TargetDataLine 读取

java - 运行 jar 文件返回 java.library.path 错误

javascript - 将字符串附加到 URL 的书签

c# - 网站解析 - webbrowser 或 httpwebresponse

html - Android - 从网站提取数据的选项? (HTML)

java - 安全出版

java - 当对象初始化时调用方法