捡了鼠标开网吧系列——nodejs实现无广告电影

栏目: Node.js · 发布时间: 6年前

内容简介:最近在看新出的电视剧“斗破苍穹”,可是一集电视剧的广告开头90s中间45s片尾15s,实在令人发指。之前有了解过,网上有很多免vip解析接口,于是本渣决定动手做一个可以去除广告的小网站,于是有一下采坑过程。首先,这是最终在线预览视频解析接口+电影链接=无广告电影。

最近在看新出的电视剧“斗破苍穹”,可是一集电视剧的广告开头90s中间45s片尾15s,实在令人发指。之前有了解过,网上有很多免vip解析接口,于是本渣决定动手做一个可以去除广告的小网站,于是有一下采坑过程。

采坑之路

首先,这是最终在线预览

1.初版

视频解析接口+电影链接=无广告电影。

捡了鼠标开网吧系列——nodejs实现无广告电影

经过测试,预期功能实现。emmm,鼠标捡到了。可是每次都要找电影链接才能观看是有点烦啊,能不能通过搜索关键字直接播放呢? 作为一个前端弱鸡,本能反应=》找接口。

2.找接口

找了半小时终于在聚合数据上找到符合条件的接口,影片链接还有上映信息都可以拿到,简直不要太舒服。使用过程发现聚合数据的接口数据并不完整,好多新上映的电影都没有返回数据,而且还有调用次数限制,此方案终结。

3.nodejs爬虫

有两种思路:1.爬取各大视频网站所有视频链接并存入数据库,用户搜索时去数据库查找电影。 2.获取到前端搜索关键字后,去视频网站爬取,然后返回给前端。第一种方式数据量比较大,要考虑到网站的反爬措施,好要写脚本定时爬取以保持可以获取视频网站最新数据。第二种方法在线爬取,会有一定的延时,经过测试延时时长在1s左右,因此决定采用第二种方式。 通过对视频网站分析发现,每个视频网站都有全网搜索接口,本次爬取企鹅视频,上代码。

捡了鼠标开网吧系列——nodejs实现无广告电影

其中$就是抓取到的html内容,如下图。

捡了鼠标开网吧系列——nodejs实现无广告电影

通过标签获取数据轻松拿到电影名、海报等信息,但是播放链接这里出现了一点问题:如果是电视剧会出现这个情况。

捡了鼠标开网吧系列——nodejs实现无广告电影

因为电视剧集数比较多,所以中间会用‘...’省略,这时候爬虫获取的播放链接就不完整。打开network,点击‘...’省略的集数加载了出来,于此同时

捡了鼠标开网吧系列——nodejs实现无广告电影

可以看到,我们想要的信息全在这个接口里。于是我们在上一个接口采集链接时做一个判断,如果当前链接value为'...'就调用这个接口,这里要注意做异步处理,不然采集不完整。

4.前端展示

这里没多少技术栈,但是因为前前后后需求一直改变,从最开始原生js到jquery,最后甚至想上框架~~!。算了不多数,这里是 github地址

5.总结

其实nodejs做爬虫坑还是蛮多的,爬取电影连接时,电影、电视剧、综艺、续集等都有不同的html结构,所以用标签爬取数据真的不是一个好的思路。而且在获取电视剧‘...’链接这一块也比较坑,因为不会nodejs断点调试,很简单的问题一直无法定位。 第一次写文章,思路、格式都不太好,见谅。下班,嘿嘿,溜了。


以上就是本文的全部内容,希望对大家的学习有所帮助,也希望大家多多支持 码农网

查看所有标签

猜你喜欢:

本站部分资源来源于网络,本站转载出于传递更多信息之目的,版权归原作者或者来源机构所有,如转载稿涉及版权问题,请联系我们

网站项目管理

网站项目管理

[美] 阿什利·弗里德莱因 / 李保庆、杨磊、王增东 / 电子工业出版社 / 2002-11 / 32.00元

这本书全方位地介绍了如何建立和最终交付一个具有很高商业价值的成功网站,讲解从项目管理的角度入手,撇开烦琐的技术细节,更加关注Web项目实施中诸如成本、进度、工作范围等问题,涉及了一个商业网站在实施过程中可能遇到的所有管理细节。书内附国际一流网站开发专家的深邃见解;涵盖了网络项目管理的关键原则及案例研究;通过友情链接,还为读者提供了模板、论坛、术语表、相关链接以及有关因特网知识的测验题。一起来看看 《网站项目管理》 这本书的介绍吧!

SHA 加密
SHA 加密

SHA 加密工具

HEX HSV 转换工具
HEX HSV 转换工具

HEX HSV 互换工具

HSV CMYK 转换工具
HSV CMYK 转换工具

HSV CMYK互换工具