最近追剧时发现找资源挺繁琐的,网页切换来切换去耗时也多,所以就想写个脚本代替。于是今下午花了点时间,先对人人影视进行了资源爬取。
抓包分析
搜索页面
打开工作台,选择NETWORK,刷新之后,如图:
图中指出的就是搜索接口‘ http ://www.zimuzu.tv/search/index?keyword=西部世界&search\_type=resource ’ 就两参数:keywd和search_type(搜索类型)
影视资源页面
点进西部世界的资源面,我们接着要获取什么呢?当然是下载链接了。
没错,就是蓝色的资源下载页,再次抓包分析。
没错就是图中箭头所指的tv,这就是接口,
Request URL:www.zimuzu.tv/resource/in…
分析多个页面后,发现只有33701是变化的,它就在西部世界url中(www.zimuzu.tv/resource/33…)
看他的返回值,是一个类似json格式的数据,但不规范。如图:
把鼠标移到跳转下载链接上,发现是http ://zmz003.com/v5ta03 ,搜索一下 v5ta03 ,就能找到了。如图:
获取百度云,电驴等连接
接下来就简单了,静态页面,有点经验就OK的。如图:
代码实现
所需第三方库
1 | 复制代码import requests |
搜索页面
1 | 复制代码#获取搜索页面资源 |
解析搜索页链接
1 | 复制代码def get_movielink(text): |
获取下载页跳转链接
1 | 复制代码def get_downloadlink(link): |
获取下载链接
1 | 复制代码def get_download(keywd,url): |
结果
大致就是这样的。
思路代码大致就这样,没做异常处理(因为我想追的剧没报错,o( ̄︶ ̄)o,可能有错,也没优化代码,你可以改善一下,比如异常处理,多线程多进程并发等
下次再找个时间,做一下自动添加百度云离线下载、或是fdm下载的脚本吧。
本文转载自: 掘金