抓取RSS源中链接图片问题REDIRECT_LOCATIONS
2012-12-03 17:29
393 查看
抓取链接里的图片时通常和rss原理的url不是对应的,中间可能会有跳转,用到了如下方法:
private String getWebRealPath(String src, String link) { try { if (src.startsWith("/")) { link = getRealLink(link); src = link.substring(0, link.indexOf("/", 7)) + src; } if (src.startsWith("./")) { link = getRealLink(link); src = link.substring(0, link.lastIndexOf("/")) + src.substring(1); } if (src.startsWith("../")) { link = getRealLink(link); String[] str = link.split("/"); int len = src.split("\\.\\./").length; String s = ""; if (link.split("/").length != 3) { for (int i = 0; i < str.length - len; i++) { s += str[i] + "/"; } src = s + src.replaceAll("\\.\\./", ""); } else { src = link + "/" + src.replaceAll("\\.\\./", ""); } } } catch (Exception e) { return src; } return src; } private String getRealLink(String link) { try { HttpContext httpContext = new BasicHttpContext(); HttpUtil.get(link, "iso-8859-1", httpContext); RedirectLocations redirectLocations = (RedirectLocations) httpContext .getAttribute(DefaultRedirectStrategy.REDIRECT_LOCATIONS); if (redirectLocations != null) { List uriList = redirectLocations.getAll(); URI uri = uriList.get(uriList.size() - 1); link = uri.toString(); } } catch (Exception e) { return link; } return link; }
相关文章推荐
- 流水账 5.8 关于抓取ListBoxItem图片错位的问题
- 发布一个抓取链接到的网页上图片的小工具
- 【AngularJS】Angularjs中 图片等链接 unsafe的问题解决方法
- python爬虫 图片链接匹配问题
- python抓取网页中链接的静态图片
- 由于图片链接问题导致Web性能的严重的下降(转贴)
- Java简单实现爬虫技术,抓取整个整个网站所有链接+图片+文件(思路+代码)
- JqueryMobile链接一个页面,而链接页面中图片需刷新才显示的问题
- C# 抓取网页的img src带参数的图片链接,并下载
- PHP抓取网页内容,获取链接绝对路径和图片绝对路径
- word 中如何添加图片和表格目录或链接的问题
- 关于IE图片链接蓝色边框的问题
- IE6、IE内核国产浏览器 png 图片热点链接 不显示问题解决方法
- ASP.NET关于图片盗链接问题
- 抓取的图片的URL中有中文字的问题
- 3.24--链接问题 图片问题
- IE6、IE内核国产浏览器 png 图片热点链接 不显示问题解决方法
- PHP抓取网页内容,获取链接绝对路径和图片绝对路径
- JqueryMobile链接一个页面,而链接页面中图片需刷新才显示的问题
- ie6和ie7中的链接图片点不中问题讨论