JSoup은 링크 href의 URL 쿼리 부분에서 앰퍼샌드를 이스케이프 처리합니다.링크 href의 앰퍼샌드를 이스케이프 처리하는 jsoup
String l_input = "<html><body>before <a href=\"http://a.b.com/ct.html\">link text</a> after</body></html>";
org.jsoup.nodes.Document l_doc = org.jsoup.Jsoup.parse(l_input);
org.jsoup.select.Elements l_html_links = l_doc.getElementsByTag("a");
for (org.jsoup.nodes.Element l : l_html_links) {
l.attr("href", "http://a.b.com/ct.html?a=111&b=222");
}
String l_output = l_doc.outerHtml();
아래 주어진 샘플 출력은 단일 & & A가 탈출되는
<html>
<head></head>
<body>
before
<a href="http://a.b.com/ct.html?a=111&b=222">link text</a> after
</body>
</html>
이고; . &으로 머물러야하지 않습니까?
에서이있어'및'유효한 기호 또는 유효한 XML과 XHTML 문서에 실패합니다. 따라서 모든 마크 업에서 표준화하기 위해 파싱해야합니다. – SRy
SRy - 완전히 이해하고 있는지 확신 할 수 없습니다. URL의 고독한 앰퍼샌드가 유효하지 않으며 대신 이스케이프/엔티티 버전이어야한다고 말하고 있습니까? – Mitch