zoukankan      html  css  js  c++  java
  • python实现各大视频网站电影下载

    一、前期准备

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

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

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

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

     二、开始编码,下载视频

      目前我遇到的下载视频的方式有两种,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:filmffmpeg-20160626-074fdf4-win32-staticin"#设置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都不给你下载,所以只能用黑科技了。

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

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

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

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

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

     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信息:

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

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

  • 相关阅读:
    用javascript获取屏幕高度和宽度等信息
    Delphi程序启动参数的读取
    在CSS中使用javascript运算表达式
    How to check an Internet connection
    CheckMenuItem Function in Delphi
    在delphi中添加一个菜单项到Windows的系统菜单
    Delphi中直接将DataSet中的数据写入Excel文件
    带有TClientDataSet的delphi应用程序在发布时应注意的问题
    Delphi下一个封装较为完整的DBGrid>Excel类
    how to advertent to connect to internet?
  • 原文地址:https://www.cnblogs.com/win0211/p/13865108.html
Copyright © 2011-2022 走看看