[Java] 网页相对URL解析
来源:互联网 发布:hashmap源码 编辑:程序博客网 时间:2024/04/29 17:29
在用爬虫解析页面的URL时,经常会碰到存在相对URL的情况,比如包含/、./和../的情况,需要做转换:
/** * 解析网页中的相对URL * @param link 网页中的链接,如href * @param sourceUrl 网页自身的URL * @return 转换后的URL */ public static String convertLinkToUrl(String link, String sourceUrl) { String url = link; if (!link.matches("http://.*") && !link.matches("https://.*")) { // 截取原始URL中最后一个“/”之前的内容, int lastSeparatorIndex = sourceUrl.lastIndexOf("/"); String thisUrl = sourceUrl; if(lastSeparatorIndex > 0) { thisUrl = sourceUrl.substring(0,lastSeparatorIndex); } // 处理相对路径 while(link.startsWith("/") || link.startsWith(".")) { if(link.startsWith("./")) { link = link.replace("./",""); } if(link.startsWith("/")) { link = link.replace("/",""); } if(link.startsWith("../")) { link = link.replace("../",""); lastSeparatorIndex = thisUrl.lastIndexOf("/"); if(lastSeparatorIndex > 0) { thisUrl = sourceUrl.substring(0,lastSeparatorIndex); } } } // 合成最终的绝对路径 url = thisUrl + "/" + link; } return url; }
0 0
- [Java] 网页相对URL解析
- java语言把网页相对URL转换成绝对URL
- java 使用Jsoup解析URL网页信息
- 相对URL的解析算法
- java URL根据相对路径获取绝对路径
- java拼装当前网页的相对路径
- java.net解析URL
- java解析URL
- java解析URL
- java:使用URL下载网页
- Python 网页解析和URL下载
- java利用url解析网页内容并模拟手动form提交数据
- 浏览器对于网页中的相对和绝对路径的解析方式
- 【Java】【URL】Java URL类解析
- Java网页解析
- java网页解析工具包
- java相对目录和绝对目录解析
- java 路径访问全接触 url相对路径、绝对路径
- Execution failed for task ':dexWandoujiaDebug'. > Multi dex requires Build Tools 21.0.0 / Current: 2
- php 批量下载图片的一个小程序
- SHELLcase流程控制和for、while循环语句的使用
- C++第六次实验——数组的操作。
- Android打包-从生成keystore到完成签名
- [Java] 网页相对URL解析
- iOS检测是否开启定位、是否允许消息通知
- yii 如何使用 CWebLogRoute 记录和调试变量
- axure产品原型在手机上运行
- 正反箭头旋转动画
- HDU 5188 zhx and contest 01背包的变形
- EasyAR尝鲜系列教程之视频播放功能代码
- 实现git hooks自动持续部署
- 00