使用WebCollector爬取时光网电影数据

数据源http://video.mtime.com/search
在这里插入图片描述
原数据是json格式的,其中i标示页码

http://video.mtime.com/api/videoSearch/getFilterData?h=movie&y=2019-2015&r=美国&p=3&s=1&i=1&c=30

在这里插入图片描述

<dependency>
    <groupId>cn.edu.hfut.dmic.webcollector</groupId>
    <artifactId>WebCollector</artifactId>
    <version>2.73-alpha</version>
</dependency>
public class MtimeMovieCrawler extends RamCrawler {

    public MtimeMovieCrawler(int pageNum) {
        //拼接url,将需要爬取url丢给Crawler
        for (int i = 1; i <= pageNum; i++) {
            String url = String.format("http://video.mtime.com/api/videoSearch/getFilterData?h=movie&y=2019-2015&r=美国&p=3&s=1&i=%s&c=30", i);
            addSeedAndReturn(url);
        }
    }

    @Override
    public void visit(Page page, CrawlDatums next) {
        //解析抓取到的数据,因为是json结果,实际就是解析json
        JsonArray list = page.jsonObject().get("movieIntegrateList").getAsJsonArray();
        list.forEach(element->{
            JsonObject movie = element.getAsJsonObject();
            System.out.println(movie.get("movieId").getAsString()+" "+
                    movie.get("titleCn").getAsString()+" ("+
                    movie.get("year").getAsInt()+")");

            System.out.println("导演:"+movie.get("directorNameCn1").getAsString());
            System.out.println("演员:"+movie.get("actorNameCn1").getAsString()+" "+movie.get("actorNameCn2").getAsString());
            System.out.println("海报:"+"http:"+movie.get("coverPath").getAsString());

            System.out.println("");
        });
    }

    public static void main(String[] args) throws Exception {
        MtimeMovieCrawler crawler = new MtimeMovieCrawler(5);
        //开启5个线程抓取数据
        crawler.setThreads(5);

        //间隔500毫秒执行
        crawler.getConf().setExecuteInterval(500);
        crawler.start(1);
    }
}
218090 复仇者联盟4:终局之战 (2019)
导演:安东尼·罗素
演员:小罗伯特·唐尼 克里斯·埃文斯
海报:http://img5.mtime.cn/mg/2019/03/29/095612.14234221_200X200X2.jpg

235701 大侦探皮卡丘 (2019)
导演:罗伯·莱特曼
演员:瑞安·雷诺兹 贾斯提斯·史密斯
海报:http://img5.mtime.cn/mg/2019/05/06/105807.30044254_200X200X2.jpg

213190 哥斯拉2:怪兽之王 (2019)
导演:迈克尔·道赫蒂
演员:米莉·博比·布朗 维拉·法梅加
海报:http://img5.mtime.cn/mg/2019/05/23/095634.71391607_200X200X2.jpg
發表評論
所有評論
還沒有人評論,想成為第一個評論的人麼? 請在上方評論欄輸入並且點擊發布.
相關文章