我无法从此元素获取超链接。我尝试过element.attr(“href”)和element.abs(“href”)无济于事。以下是我要提取的内容:
<p ><strong>Previous Chapter:</strong> <a href="http://www.mangahere.com/manga/mirai_nikki/v07/c031/">Mirai Nikki 31</a>
我想要来自该来源的网址,但我无法让它发挥作用。
这是我到目前为止的代码:
Document doc;
try{
doc = Jsoup.connect(currentURL).get();
Element e = doc.getElementsByClass("reader_tip").first().children().last().children().first();
System.out.println(e.text());
String backPage = e.attr("href");
loadPage(backPage);
}
catch(Exception ex){
ex.printStackTrace();
}
以及相关网址:
http://www.mangahere.com/manga/mirai_nikki/v07/c032/
这可能是我看到的那么简单。如果有人能提供帮助,我们将不胜感激。
答案 0 :(得分:1)
您可以将选择器简化为p:contains(Previous Chapter) a
,以查找包含“上一章”文字的P标签内的A标签。
完整示例:
String url = "http://www.mangahere.com/manga/mirai_nikki/v07/c032/";
String ua = "Mozilla/5.0 (Macintosh; Intel Mac OS X 10_8_2) AppleWebKit/537.33 (KHTML, like Gecko) Chrome/27.0.1438.7 Safari/537.33";
Document doc = Jsoup.connect(url).userAgent(ua).timeout(10 * 1000).get();
Element a = doc.select("p:contains(Previous Chapter) a").first();
String backUrl = a.attr("href");
System.out.println(String.format("Back URL: %s (%s)", backUrl, a.text()));
打印:
Back URL: http://www.mangahere.com/manga/mirai_nikki/v07/c031/ (Mirai Nikki 31)