В настоящее время я использую JTidy для анализа HTML-документа и извлечения коллекции всех тегов привязки в данном HTML-документе.Затем я извлекаю значение атрибута href каждого тега, чтобы создать коллекцию ссылок на странице.
К сожалению, эти ссылки можно выразить несколькими различными способами: некоторые абсолютные (http://www.example.com/page.html
), некоторыеотносительный (/page.html
, page.html
или ../page.html
).Более того, некоторые из них могут быть просто якорями (#paragraphA
).Когда я захожу на мою страницу в браузере, он автоматически знает, как обрабатывать эти различные значения href, если я нажму на ссылку, однако, если я буду следовать одной из этих ссылок, полученных из JTidy с использованием HTTPClient программно, мне сначала нужно предоставитьдействительный URL (так, например, мне сначала нужно преобразовать /page.html, page.html и http://www.example.com/page.html в http://www.example.com/page.html).
Есть ли какие-то встроенные функции, будь то в JTidy илив другом месте, что может достичь этого для меня? Или мне нужно будет создать свои собственные правила для преобразования этих различных URL-адресов в абсолютный URL-адрес?