使用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
發表評論
所有評論
還沒有人評論,想成為第一個評論的人麼? 請在上方評論欄輸入並且點擊發布.
相關文章