我首先尝试通过应用以下脚本来获取网页中的所有链接:然后我想再次使用这些链接。但由于解码并不总是有效,这会导致链接不正确,并且我收到 404 错误。
Document doc = Jsoup.connect(doi_con).ignoreContentType(true).get();
Elements links = doc.select("a[href]");
for (Element link : links) {
String url = link.absUrl("href");
//byte[] decodeds1= DatatypeConverter.parseBase64Binary(url);
//dec_url = DatatypeConverter.printBase64Binary(decodeds1);
dec_url = java.net.URLDecoder.decode(url, "UTF-8");
}
在此代码中,解码部分似乎适用于某些 url。我得到的样品如下:
http://link.springer.com/signup-login?previousUrl=/article/10.1007%2Fs10899-005-5558-2
http://link.springer.com/article/10.1007/s10899-005-5558-2#kb-nav--main
正如所见,第一个链接解码不起作用,而后来它起作用了。
我错过了什么?如上面的代码所示,我还尝试了 parseBase64Binary 和 printBase64Binary ,但它再次不起作用。
提前致谢!