软件园学生在线

  • {{ item.name }}
  • 2023试用期

登录与注册

[后端二] 王博凡

  • 王博凡
  • 2022-10-19
  • 0

爬虫

学习:

- 对于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形式排版,区分书名,章节名以及正文内容
王博凡
王博凡
© 2025 软件园学生在线
Theme by Wing