前面已经介绍了项目的框架,这一篇主要介绍使用webmagic爬虫获取数据。
这里只会贴上关键代码,如果想看全部代码可以到github上面去下载。
首先,使用webmagic框架只需要定制爬虫规则就可以了,但是解析爬虫下载的html页面,就需要解析工具了,这里我用的Jsoup。
下面贴一个例子
//排行榜页面
private void FirstURL(Page page) {
try {
//获取当前的url
String link = page.getUrl().get();
//解析HTML(由于该网站的8个分类div好像是动态的,只能解析该页面,然后挨个遍历这8个div节点)
Document doc = Jsoup.connect(link).get();
//获取小说排行榜的分类div
Elements typeDiv = doc.getElementsByClass("tbo");
//遍历这些分类div
for (Element typediv : typeDiv) {
//获取分类名所在的节点
Elements typeNodo = typediv.select("span.btitle");
//通过分类名节点获取分类名
String typeName = typeNodo.text();
typeName = typeName.substring(0,2);
BookType bookType = new BookType();
bookType.setTypeName(typeName);
//提取该分类名,并查询数据库,如果数据库没有该条数据则添加
QueryWrapper<BookType> queryWrapper = new QueryWrapper<>()