python实现各大视频网站电影下载

python实现各大视频网站电影下载一、前期准备有时候我们想下载自己喜欢的电影,但很多时候要么需要安装客户端才能下载,或者干脆不提供下载的服务,很是不爽,因此这里我们介绍使用python来实现网站的电影下载功能,凡是能在线观看的,都

大家好,又见面了,我是你们的朋友全栈君。

一、前期准备

  有时候我们想下载自己喜欢的电影,但很多时候要么需要安装客户端才能下载,或者干脆不提供下载的服务,很是不爽,

因此这里我们介绍使用python来实现网站的电影下载功能,凡是能在线观看的,都是可以下载滴!

  需要使用的工具有:1、python 2、you_get模块,使用pip安装 3、ffmpeg,ffmpeg需要去网站下载一个,加压完之后,将bin目录配置到环境变量中

控制台输入ffmpeg说明配置成功了

<span role="heading" aria-level="2">python实现各大视频网站电影下载

 二、开始编码,下载视频

  目前我遇到的下载视频的方式有两种,1种就是使用you_get来直接获取,但是有时候对于某些小网站获取不到,

咱也不知道,咱也不敢问针对这种情况,我分析了这些网站的请求,使用requests库直接进行下载,下面咱们一起来看下代码:

1、使用you_get+ffmpeg代码如下:

1 from you_get import common as you_get
2 url = "http://www.pengwei168.com/play/41952-1-1.html" #视频网址
3 #
4 dir = r"C:\film"  #下载目录
5 os.environ["path"] = os.environ.get("path")+r";C:\film\ffmpeg-20160626-074fdf4-win32-static\bin"#设置ffmpeg到项目环境
6 sys.argv = ["you-get","--debug","-o",dir,url] #下载视频
7 # sys.argv = ["you-get","-i",url]#查看视频信息
8 # sys.argv = ["you-get","--format=4k","-o",dir,url]#选择清晰度下载视频
9 you_get.main()

上面的例子为优酷的下载视频,下载速度极快,而且上面下载的这个视频即使你是优酷vip都不给你下载,所以只能用黑科技了。

<span role="heading" aria-level="2">python实现各大视频网站电影下载

 

 上面的代码我自己亲测对优酷,爱奇艺,搜狐视频都能轻松下载。

  2、使用requests库下载电影,当遇到某些视频网站you_get无法下载的话(获取可以下载,我可能不知道),我们可以使用request来下载。

首先我们分析一下电影网站的请求,发现了如下的请求:

<span role="heading" aria-level="2">python实现各大视频网站电影下载

 

 这个截图主要有两类请求,第一个是视频的请求头文件,请求里面会返回这个商品总共有多少个小的视频组成,后面框起来的就是这些小片段的视频了。

我们的思路很简单:挨次请求这些小的片段视频,将其写到本地的一个文件里面就可以了,话不多说,上才艺!

 1 import requests
 2 url = "https://youku.cdn7-okzy.com/20200728/20369_e1b41301/1000k/hls/2788bc741cc"
 3 with open('c:/film/活着2020.mp4', "ab") as mp4:
 4     for segment in range(0,1460):
 5         if segment<10:
 6             segment = "00000"+str(segment)
 7         elif segment<100:
 8             segment = "0000" + str(segment)
 9         elif segment<1000:
10             segment = "000" + str(segment)
11         else:
12             segment = "00" + str(segment)
13         print(url+str(segment)+".ts")
14         rs = requests.get(url+str(segment)+".ts", stream=True)
15         for chunk in rs.iter_content(chunk_size=1024 * 1024):
16             if chunk:
17                 mp4.write(chunk)

上面这个列子是下载的人人视频的电影【活着2020】,还有1905电影网也可以使用这种方式下载。

  以上就是python下载电影的2种方式了,你学废了吗????

——————————-美丽的分割线———————–

对于vip才能看的电影,如果想下载,需要携带cookie信息,这时候我们用you-get的时候

需要带上cookier信息:<span role="heading" aria-level="2">python实现各大视频网站电影下载

 

 

 首先先在浏览器里面登录vip账号,这时候我们的浏览器会将cookie信息写入本地浏览器文件,我的火狐cookie的路径如上。

然后再设置参数的时候使用:-c,cookies就可以下载vip电影了。

 

版权声明:本文内容由互联网用户自发贡献,该文观点仅代表作者本人。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌侵权/违法违规的内容, 请联系我们举报,一经查实,本站将立刻删除。

发布者:全栈程序员-站长,转载请注明出处:https://javaforall.net/155869.html原文链接:https://javaforall.net

(0)
全栈程序员-站长的头像全栈程序员-站长


相关推荐

  • vim保存和退出_vim编辑器保存退出

    vim保存和退出_vim编辑器保存退出退出vim的快捷键,不需要进入命令编辑模式按住shiftzz保存退出zq不保存退出,q表示放弃之所以按住shift,其实是切换大小写在命令编辑模式下::q不保存退出:q!不保存强制退出:wq保存退出,w表示写入,不论是否修改,都会更改时间戳:x保存退出,如果内容未改,不会更改时间戳“:x”和“:wq”的区别如下:(1…

    2022年8月24日
    11
  • 画平行线的步骤口诀_长轴的简化画法

    画平行线的步骤口诀_长轴的简化画法平行线的判定方法是初中数学必须要掌握的知识,但有些同学不太熟悉平行线的判定方法,总会出现丢分的现象,我们一起来看一下常用的平行线的判定方法。(1)平行线的定义法在同一平面内,不相交的两条直线叫做平行线。直线a与b平行,则a∥b(2)平行线的传递性如果两条直线都与第三条直线平行,那么这两条直线也互相平行。也就是说:如果b∥a,c∥a,那么b∥c例题:如图,直线a∥b,b∥c,c∥d,那么a∥d吗?…

    2022年9月20日
    0
  • 数据库 模式 视图 索引

    数据库 模式 视图 索引1、外模式、模式、内模式之间的区别及其映射关系       从数据库管理系统角度看,数据库系统通常采用三级模式结构:外模式、模式、内模式,这是数据库管理系统内部的系统结构。在数据模型中有“型”(Type)和“值”(Value)的概念。型是指对某一类数据的结构和属性的说明,值是型的一个具体赋值。数据库系统的模式是数据库中全体数据的逻辑结构和特征的描述,它仅仅涉及到型的描述,不涉及具体的值。模式的…

    2022年7月22日
    9
  • javase学习笔记

    javase学习笔记01.01_计算机基础知识(计算机概述)(了解)A:什么是计算机?计算机在生活中的应用举例计算机(Computer)全称:电子计算机,俗称电脑。是一种能够按照程序运行,自动、高速处理海量数据的现代化智能电子设备。由硬件和软件所组成,没有安装任何软件的计算机称为裸机。常见的形式有台式计算机、笔记本计算机、大型计算机等。应用举例1:科学计算2、数据处理3、自动控制4、计算机辅助设计…

    2022年5月13日
    28
  • java观看视频次数_java数字转换视频播放次数等

    java观看视频次数_java数字转换视频播放次数等1.1万、9999.9万、1.1亿、999亿+*播放量的数字显示规则1-9999,按照实际数字显示10000-9999999,按照1万、1.1万、9999.9万100000000-99900000000,按照1亿、1.1亿、999亿>99900000000,统一显示为999亿+所有数字显示均保留到小数点后一位即可“`java/***视频观看次数、评论数**@paramtimes*@…

    2022年7月8日
    23
  • 内网穿透 隧道_ping隧道

    内网穿透 隧道_ping隧道本文研究ICMP隧道的一个工具,icmp_tran

    2022年10月18日
    0

发表回复

您的邮箱地址不会被公开。 必填项已用 * 标注

关注全栈程序员社区公众号