简介

平时需要下载一些腾讯、优酷里的视频,但是却无法直接从浏览器下载,需要安装各自的客户端才能下载。以前用硕鼠就可以解析下载,现在由于版权问题,硕鼠已经废了。

当然如果谷歌下的话,还是能找到可以解析下载的网站的,不过就是有点麻烦。

偶然发现这款视频下载器:Annie

跨平台,支持 Windows、Mac、Linux,安装使用都非常简单

支持的视频平台也很多,包括:抖音、哔哩哔哩、半次元、pixivision、优酷、YouTube、爱奇艺、芒果TV、Tumblr、Vimeo、Facebook、斗鱼视频、秒拍、新浪微博、Instagram、Twitter、腾讯视频、网易云音乐、音悦台

本文记录一下 Windows 端的安装方法和使用方式。

准备工作

  • PowerShell 版本要求3+
  • .NET Framework 4.5+

一般来说,Win 10 就满足以上条件。Win 7 的话需要检查下

检查 PowerShell 版本

1、电脑左下角搜索框输入 Powershell,打开Windows Powershell,输入以下命令并回车,检查 PowerShell 的版本:

$PSVersionTable.PSVersion

其中,Major为版本号:

uud.me-1558233490.jpg

升级PowerShell:(借用大佬的:https://www.moerats.com/archives/935/

32位下载地址:https://www.moerats.com/usr/down/powershell/Win7-KB3191566-x86.zip
64位下载地址:https://www.moerats.com/usr/down/powershell/Win7-KB3191566-x64.zip

Windows 7 升级 .NET Framework 4.5+

一般来说Windows 10 已经满足条件,不需要升级

Windows 7 部分可能需要升级,检查.NET Framework版本:https://docs.microsoft.com/zh-cn/dotnet/framework/migration-guide/how-to-determine-which-versions-are-installed

升级:(借用大佬的:https://www.moerats.com/archives/935/

安装.Net 4.5.2全量包
下载地址:https://www.moerats.com/usr/down/powershell/NDP452-KB2901907-x86-x64-AllOS-ENU.exe

安装Annie

GitHub 项目地址:https://github.com/iawia002/annie

安装Scoop

在PowerShell 窗口内,输入以下命令并回车安装Scoop:

iex (new-object net.webclient).downloadstring('https://get.scoop.sh')

你可能会遇到错误提示:

PowerShell requires an execution policy of 'RemoteSigned' to run Scoop

此时按照提示,输入命令并回车:

Set-ExecutionPolicy RemoteSigned -scope CurrentUser

再按提示输入 Y 回车即可

之后再次输入命令安装Scoop:

iex (new-object net.webclient).downloadstring('https://get.scoop.sh')

uud.me-1558233601.jpg

关于更多Scoop的使用,可以看下少数派的这个文章:https://sspai.com/post/52496

安装Annie

Scoop 安装完成后,使用Scoop 快速安装 Annie

PowerShell 下输入以下命令并回车:

scoop install annie

稍等片刻就安装完成了

如何使用

安装其实很简单,关键是如何使用

这里首先列一下使用命令:

annie [OPTIONS] URL [URL...]    
#可选参数如下
Options
  -i    Information only
  -F string
        URLs file path
  -d    Debug mode
  -j    Print extracted data
  -v    Show version

Download:
  -f string
        Select specific stream to download
  -p    Download playlist
  -n int
        The number of download thread (only works for multiple-parts video) (default 10)
  -c string
        Cookie
  -r string
        Use specified Referrer
  -cs int
        HTTP chunk size for downloading (in MB) (default 0)

Network:
  -s string
        SOCKS5 proxy
  -x string
        HTTP proxy
  -retry int
        How many times to retry when the download failed (default 10)

Playlist:
  -start int
        Playlist video to start at (default 1)
  -end int
        Playlist video to end at
  -items string
        Playlist video items to download. Separated by commas like: 1,5,6

Filesystem:
  -o string
        Specify the output path
  -O string
        Specify the output file name

Subtitle:
  -C    Download captions

Youku:
  -ccode string
        Youku ccode (default "0590")
  -ckey string
        Youku ckey (default "7B19C0AB12633B22E7FE81271162026020570708D6CC189E4924503C49D243A0DE6CD84A766832C2C99898FC5ED31F3709BB3CDD82C96492E721BDD381735026")
  -password string
        Youku password

YouTube
  -ytb-stream2
        Use data in url_encoded_fmt_stream_map

Aria2:
  -aria2
        Use Aria2 RPC to download
  -aria2addr string
        Aria2 Address (default "localhost:6800")
  -aria2method string
        Aria2 Method (default "http")
  -aria2token string
        Aria2 RPC Token

这里以B站视频为例,列一下常用的使用命令:

以下命令都是在PowerShell 下输入运行

直接下载一个视频
annie https://www.bilibili.com/video/av27234784/

uud.me-1558248737.jpg

同时下载多个视频

直接加上多个视频链接,链接之间以空格隔开:

annie https://www.bilibili.com/video/av10253392/ https://www.bilibili.com/video/av7174717

uud.me-1558249213.jpgB站视频可以直接用av号,不需要链接:

annie av2704514

uud.me-1558249297.jpg

列举视频所有清晰度,但不下载

使用 -i参数

annie -i https://www.bilibili.com/video/av27234784/

uud.me-1558249399.jpg

下载指定清晰度视频,比如720P

使用-f参数

annie -f 64 https://www.bilibili.com/video/av27234784/
指定下载的保存目录

使用 -o 目录参数

annie -o F:\Anniedownload -f 64 https://www.bilibili.com/video/av27234784/

注意:指定的保存目录不能有中文、文件夹名字不能带空格,否则会出错

uud.me-1558249833.jpg

下载B站剧集

使用-p 参数,可以一次下载所有集数(支持B站和Youtube

#列出该集数的电视剧所有集数清晰度等信息
annie -i -p https://www.bilibili.com/bangumi/play/ep133269
#下载1到20集1080P视频
annie -f 80 -p -start 1 -end 20 https://www.bilibili.com/bangumi/play/ep133269
使用Socks5代理下载

如果下载国外视频网站的视频,比如Youtube,就需要使用 -s参数设置socks5代理

以下示例的前提是:你电脑已经打开小飞机,小飞机设置的本地监听端口为1080

annie -s 127.0.0.1:1080 https://www.youtube.com/watch?v=Hh19008zVnE

下载国外视频响应速度比较慢

uud.me-1558250379.jpg

更多的使用方法可以看Github项目里的介绍:https://github.com/iawia002/annie

Last modification:March 17, 2020
如果觉得我的文章对你有用,请随意赞赏