爬虫
学习:
- 对于html页表元素标签的分析- 对于html页表元素标签的分析
- 利用标签元素配合id检索获取指定内容:- 利用标签元素配合id检索获取指定内容:
用指定内容特有的标签进行检索,若标签较普遍,还可配合id检索进行准确筛选
- jsoup中的若干类及方法- jsoup中的若干类及方法
如select返回Elements对象(相当于一个集合),而selectFirst则返回Element如select返回Elements对象(相当于一个集合),而selectFirst则返回Element对象
- 事件监听配合对程序进行控制:- 事件监听配合对程序进行控制:
使用Jframe窗口配合事件监听,当网络环境不佳时按下按钮便可终止爬取
- 正则表达式Pattern以及Matcher对象的使用方法:
String a = "(https://www.aixiaxsw.com)\\/[0-9]*\\/[*0-9]*\\/";//书本主页网址表达式
Pattern p = new Pattern.compile(a);
Matcher m = p.matcher(检索文段);//m即为有指定格式的文段索引
- 数据类型的对应
如flieOutputStream中的write方法中,需要的类型为byte数组,而我们要输入的是字符串,于是用getBytes方法将其转化.因此引出的问题有同名类的鉴别:我在写的时候曾选用了其他包下的同名类,导致代码虽然和示例相同却报错
问题:
- 若重复爬取相同小说,会覆盖原来小说存储数据,若中途停止, 即使之前已爬取完整书籍,也会覆盖为不完整版本
- 想要实现先暂停爬取,再继续上次停止地方继续爬取功能,以及终止之后将未爬取完的书目删除功能
其他
- 学会了配置maven,但打包得到的jar包缺少主目录,不知道怎么搞,所以最后用idea上的打包功能实现.
- 使用正则表达式匹配所需网址,若非指定小说网将会报错
- 用了markdown形式排版,区分书名,章节名以及正文内容