简易爬虫学习总结
- 章节页面连接
"aixiaxsw"不同与演示案例的"xbiquge",从目录页面中获取的章节Url会含有部分目录页面的Url,故不能延用menuUrl + subLink
语句以连接到相应章节页面。此处使用"https://www.aixiaxsw.com/" + subLink
替代,因而只能支持"aixiaxsw"的爬取。
- 输入错误网址的检测及反馈
在idea中使用正则表达式.*aixiaxsw.*
和Pattern.matches()
语句检测输入的Url中是否含有字符串"aixiaxsw",从而判定输入是否正确。(依旧存在如果输入含有该字符串但Url不合规或找不到页面时控制台的报错)对于不含该字符串的输入将通过循环告知用户并要求重新输入。
boolean result = Pattern.matches(key,menuUrl);
while(!result){
System.out.print("url错误,请重新输入正确的网址:");
menuUrl = sc.next();
result = Pattern.matches(key,menuUrl);
}//判断输入中是否含有关键字
- 作者信息的获取
仿照书目名称的获取方式使用document.body().selectFirst(p)
获取章节页面html中的第一个\
标签并补充在fileOut.write()
语句中。
- “最新章节”的跳过爬取
使用for循环以及continue语句达成跳过指定数目章节的作用。(该方法只适用于预先知道需要跳过章节数目的场景,故不具有不同网站的普适性)
- 章节超链接的补充
在fileOut.write()
语句中添加html超链接代码并通过markdown的渲染即可以轻松实现。
- jar
参照ppt中相关链接便能实现胖包的打包,再搜索cmd打开jar等即可。