Skip to content

swklzr/multi-dl

Folders and files

NameName
Last commit message
Last commit date

Latest commit

 

History

2 Commits
 
 
 
 
 
 
 
 
 
 
 
 

Repository files navigation

批量下载工具-php版

  1. 请在命令行下使用
  2. 支持断点下载,批量下载,多线程下载,视频合并.
  3. 可以用于下载各大视频网站,网盘站点等等任何需要下载工具的场景.

目前支持的下载模式

视频网站
  1. 优酷

需要的工具:

  1. memcached: 推荐安装,如果用文件缓存,请修改config.php
  2. ffmpeg: 用于视频合并,在library/sh下,自行设置

文件夹结构

  1. config (存放视频vid的配置文件).
    1. 文件名格式: 配置文件名.配置解析器名
    2. 配置文件格式:
      1. downloader格式: 插件名 文件名(支持‘/’来创建子目录) [参数1.key 参数1.value [参数2.key 参数2.value [...] ]]
  2. downloads (存放所有下载的视频文件).
    1. 缓存的文件片段: downloads/temp/插件名/文件名/片段号.文件类型
    2. 下载完成的文件: downloads/插件名/文件名.文件类型
  3. cache (用于数据缓存).
  4. library
    1. config.php (配置文件和类库载入文件)
    2. plugin (用于提供下载视频的地址或配置,必须继承下面抽象类中的一个).
      1. /type/config_provider 递归提供视频vid信息,用于下载视频列表
      2. /type/url_provider 提供该下载视频的curlopts配置,如果原始文件分段,则需要提供concat方法来合并视频
    3. types (接口或抽象类的定义)
    4. sh (本工具用到的sh文件,还没有支持windows平台)
    5. tools (本工具核心类文件)
  5. demos 类库的使用demo
  6. 帮助文档(还未编写)

开发者帮助

功能扩展,只需要在library/plugin下添加相应的插件类.