java爬虫系列第一讲-爬虫入门

1. 概述 java爬虫系列包含哪些内容?

java爬虫框架webmgic入门

使用webmgic爬取 中的电影资源(动作电影列表页、电影下载地址等信息)

使用webmgic爬取 极客时间 的课程资源(文章系列课程 和 视频系列的课程)

本篇文章主要内容:

介绍java中好用的爬虫框架

java爬虫框架webmagic介绍

使用webgic爬取动作电影列表信息

2. java中好用的爬虫框架 如何判断框架是否优秀?

容易学习和使用,网上对应的学习资料比较多,并且比较完善

使用的人比较多,存在的坑别人已经帮你填的差不多了,用起来会更顺心一些

框架更新比较快,社区活跃,可以快速体验一些更好的功能,并与作者进行交流

框架稳定、方便扩展

按照以上几点的,推荐一款非常好用的java爬虫框架webmgic

3. webmgic介绍

WebMagic是一个简单灵活的Java爬虫框架。基于WebMagic,你可以快速开发出一个高效、易维护的爬虫。

webmagic官网:

webmgic中文学习文档:

4.使用webgic爬取动作电影列表

使用webgic爬取 爱电影 电影列表资源信息

示例源码地址

1. 新建springboot项目java-pachong

java爬虫系列第一讲-爬虫入门

2. 导入maven配置 <dependencies> <dependency> <groupId>org.springframework.boot</groupId> <artifactId>spring-boot-starter</artifactId> </dependency> <dependency> <groupId>org.projectlombok</groupId> <artifactId>lombok</artifactId> <optional>true</optional> </dependency> <dependency> <groupId>org.springframework.boot</groupId> <artifactId>spring-boot-starter-test</artifactId> <scope>test</scope> </dependency> <!-- webmagic start --> <dependency> <groupId>us.codecraft</groupId> <artifactId>webmagic-core</artifactId> <version>0.7.3</version> <exclusions> <exclusion> <artifactId>fastjson</artifactId> <groupId>com.alibaba</groupId> </exclusion> <exclusion> <artifactId>commons-io</artifactId> <groupId>commons-io</groupId> </exclusion> <exclusion> <artifactId>commons-io</artifactId> <groupId>commons-io</groupId> </exclusion> <exclusion> <artifactId>fastjson</artifactId> <groupId>com.alibaba</groupId> </exclusion> <exclusion> <artifactId>fastjson</artifactId> <groupId>com.alibaba</groupId> </exclusion> <exclusion> <artifactId>log4j</artifactId> <groupId>log4j</groupId> </exclusion> <exclusion> <artifactId>slf4j-log4j12</artifactId> <groupId>org.slf4j</groupId> </exclusion> </exclusions> </dependency> <dependency> <groupId>us.codecraft</groupId> <artifactId>webmagic-extension</artifactId> <version>0.7.3</version> </dependency> <dependency> <groupId>us.codecraft</groupId> <artifactId>webmagic-selenium</artifactId> <version>0.7.3</version> </dependency> <dependency> <groupId>net.minidev</groupId> <artifactId>json-smart</artifactId> <version>2.2.1</version> </dependency> <!-- webmagic end --> <dependency> <groupId>com.alibaba</groupId> <artifactId>fastjson</artifactId> <version>1.2.49</version> </dependency> <dependency> <groupId>commons-lang</groupId> <artifactId>commons-lang</artifactId> <version>2.6</version> </dependency> <dependency> <groupId>commons-io</groupId> <artifactId>commons-io</artifactId> <version>2.6</version> </dependency> <dependency> <groupId>commons-codec</groupId> <artifactId>commons-codec</artifactId> <version>1.11</version> </dependency> <dependency> <groupId>commons-collections</groupId> <artifactId>commons-collections</artifactId> <version>3.2.2</version> </dependency> </dependencies> 3. 编写抓取电影数据的代码

在谷歌浏览器中访问 爱电影动作片列表

F12发现列表页中数据是通过一个ajax请求获取的,我们获取请求地址

?_=1555726508180

编写抓取代码

package com.ady01.demo1; import lombok.extern.slf4j.Slf4j; import us.codecraft.webmagic.Page; import us.codecraft.webmagic.Site; import us.codecraft.webmagic.Spider; import us.codecraft.webmagic.processor.PageProcessor; /** * <b>description</b>:第一个爬虫示例,爬去动作片列表信息 <br> * <b>time</b>:2019/4/20 10:58 <br> * <b>author</b>:ready likun_557@163.com */ @Slf4j public class Ady01comPageProcessor implements PageProcessor { @Override public void process(Page page) { log.info("爬取成功!"); log.info("爬取的内容:" + page.getRawText()); } @Override public Site getSite() { return Site.me().setSleepTime(1000).setRetryTimes(3); } public static void main(String[] args) { String url = "http://m.ady01.com/rs/film/listJson/1/2?_=1555726508180"; Spider.create(new Ady01comPageProcessor()).addUrl(url).thread(1).run(); } } 4. 运行爬虫代码

内容版权声明:除非注明,否则皆为本站原创文章。

转载注明出处:https://www.heiqu.com/zgjgfs.html