我想从网址示例中获取图片bloger头像:https://soundcloud.com/topsify
<span style="background-image: url("https://i1.sndcdn.com/avatars-000132054558-5ra8gl-t500x500.jpg"); width: 200px; height: 200px; opacity: 1;" class="sc-artwork sc-artwork-placeholder-8 image__rounded image__full g-opacity-transition" aria-label="Topsify’s avatar" aria-role="img"></span>
我试着得到:
document = Jsoup.connect("https://soundcloud.com/topsify").get();
Elements imgElement = document.select("span[style*=background-image:]");
但它返回空白。 请支持获取头像网址:https://i1.sndcdn.com/avatars-000132054558-5ra8gl-t500x500.jpg 谢谢!
答案 0 :(得分:0)
尝试使用userAgent
字符串。以下代码只是示例,您可以使用element.select()
。
检查页面的查看源。它是 img 标记,而不是 span 标记<img src="https://i1.sndcdn.com/avatars-000132054558-5ra8gl-t500x500.jpg">
String url = "https://soundcloud.com/topsify";
Response res = Jsoup.connect(url).userAgent("Mozilla/5.0 (Windows NT 6.3; Trident/7.0; rv:11.0) like Gecko").timeout(3000).execute();
Document document = res.parse();
//get <img> tags
for (Element img : document.getElementsByTag("img")) {
Elements avatars;
//get src attribute value whose has "avatars"
if((avatars = img.getElementsByAttributeValueMatching("src", "avatars")) !=null){
System.out.println(avatars.attr("src"));
}
}