Java爬虫-爬个豆瓣影院

Java爬虫-爬个豆瓣影院前文再续书接上一回,上一次说了WebCollector的一些简单介绍以及Demo的讲解,今天我们来实战一下。前文:https://blog.csdn.net/a81579261/article/details/100986966正文首先我们创建一个DemoDoubanCrawler类,继承于RamCrawler这里插个题外话,说明一下RamCrawler和Br...
摘要由CSDN通过智能技术生成

Java爬虫-爬个豆瓣影院

前文再续书接上一回,上一次说了WebCollector的一些简单介绍以及Demo的讲解,今天我们来实战一下。
前文:https://blog.csdn.net/a81579261/article/details/100986966

正文

首先我们创建一个DemoDoubanCrawler类,继承于RamCrawler
在这里插入图片描述
这里插个题外话,说明一下RamCrawler和BreadthCrawler的区别:
大家点进去也可以看到
在这里插入图片描述
两个同属于基于内存的插件,但是RamCrawler属于一个短期的爬虫,如爬一次,或者爬个一会儿,可以使用。而BreadthCrawler属于一个长期的爬虫,如持续性的爬虫任务,特别是那些云服务进行爬虫,这些持续好一段时间的爬虫。实际是我们实战玩玩的,用哪个都是一样的。

回到正题来,我们先去看一下豆瓣电影网的结构
1.首页为一个模糊的列表展示
在这里插入图片描述
我们通过CSS元素选择只能选择到红色框的部分,下面是通过网络请求动态加载的,大家可以打开F12看看,或者后面代码成型后可以打个断点看一下page.doc/page.html这两个变量。(一开始我是打算爬下面部分的,发现根本拿不到,尴尬)
2.点击进去是一个详情页,详情页信息更多,所以我们选择爬取的最终目的是详情页的信息
在这里插入图片描述
看完结构之后,我们开始选一个比较匹配的Demo进行实战,我这里选的是DemoAnnotatedMatchTypeCrawler(豆瓣图书爬取)这个Demo的,一方面是因为我们需要爬取2个层次的页面,另方面是大家都是豆瓣的(你懂的),这Demo会比较相近。

首先,确认爬取的第一页

我们爬取的第一页肯定是首页:https://movie.douban.com/
在这里插入图片描述
为了确认这是在爬取首页,我们在后面加上一个type,好让它走首页爬取的代码,然后看看,首页爬取什么东西,如何进入下一页爬取?
在这里插入图片描述
next.add 第2深度的爬取任务;
page.links 为获取CSS选择器中的超链接;
li.poster>a CSS选择器指向跳转详细页面的连接;
所以这等价于:addSeed(“https://movie.douban.com/subject/27050133/?from=showing”,“moivedetail”);

第二,进行第二页的爬取

通过上面的,我们就会进入详情页,然后要干嘛?就。。。。你想干嘛就干嘛吧!
在这里插入图片描述
我这里就是通过CSS选择器分别爬了一下标题,编剧,明星,描述,评价,然后输出。

补充,玩着玩着被封了,怎么办?

玩着玩着,我们就会看到一下界面或者其他返回代码
在这里插入图片描述
然后再去官网看看,发现需要登陆,或者拒绝访问了。这说明你成功的摸到了豆瓣电影院的底线了,它将会拉黑你一天,然后我们今天就下班了?

不可能的,既然我来了,就不会轻易的离开。你不让我进,那我就易容,换张面(代理)继续玩
在这里插入图片描述
使用代理&#

  • 0
    点赞
  • 2
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值