版权声明:本文为博主原创文章,未经博主允许不得转载。 https://blog.csdn.net/qq923132714/article/details/89811994
Youtube-upload命令行上传视频
因为本地上传带宽有限所以想到了vps上传视频,一搜发现有前辈造轮子,就直接用了
GitHub地址:https://github.com/tokland/youtube-upload
码文不易,希望支持,谢谢->支持原创
环境
- Ubuntu 18.04.2 LTS
- aws CE2
安装youtube-upload
$ pip install google-api-python-client
$ pip install progressbar2
$ wget https://github.com/tokland/youtube-upload/archive/master.zip
$ unzip master.zip
$ cd youtube-upload-master
$ sudo python setup.py install
如果还未安装pip
$ sudo apt-get install python-pip
如果还未安装unzip
$ sudo apt-get install unzip
注册api
- 前往 google API console
- 新建项目,命名随意
- 进入API库,搜索youtube ,找到 YouTube Data API v3 ,并启用
- 创建凭据 ,选择 OAuth客户端ID (可能需要填写OAuth同意屏幕,项目名称和网址随意填写,最后点保存)
- 创建凭据后,点击创建的凭据名称,进入凭据,点击下载JSON,并保存。
保存好下载的json
码文不易,希望支持,谢谢->支持原创
配置
- 把刚刚下好的json上传到服务器
- 就可以上传了
youtube-upload --title="标题" --client-secrets="上传的JOSN" --privacy=private --category=分类 --playlist=播放单 "视频路径"
其它选项
$ youtube-upload \
--title="A.S. Mutter"
--description="A.S. Mutter plays Beethoven" \
--category=Music \
--tags="mutter, beethoven" \
--recording-date="2011-03-10T15:32:17.0Z" \
--default-language="en" \
--default-audio-language="en" \
--client-secrets=my_client_secrets.json \
--credentials-file=my_credentials.json \
--playlist "My favorite music" \
anne_sophie_mutter.flv
如果不想每次都指定json,可以把json移动到~/.client_secrets.json
脚本批量上传
创建脚本
vi ./up.sh
之后输入以下信息保存
1 #!/bin/bash
2 # author:logic
3 # batch upload video
4 a=0
5 for i in *.mp4;
6 do
7 echo last return $? $a
8 t= [ $? -eq $a ]
9 echo $t
10 t= [ "$?" == "$a" ]
11 echo $t
12 if [ $? -eq $a ];
13 then
14 echo youtube-upload --title=\""$i"\" "$i"
15 youtube-upload --title=\""$i"\" "$i" 1>l1.log 2 >l2.log 3>l3.log
16 else
17 exit
18 fi
19 done
20 exit
目前这个脚本可以上传当前目录的所有.mp4后缀的文件,我试图去做异常处理,但是似乎并不起作用,如果有人有解决办法感谢指导
所以量太大时候就有一个问题,youtubeAPI有流量限制,轻轻松松就超线,所以还是要人工检查上传成功与否。
相关资源
支持原创
码文不易,希望支持,谢谢->支持原创
支付宝扫个红包
上面这张图广告,请各位理智对待(分享收益不足望大家谅解)