CTList:一个可以绑定多个天翼云网盘的目录列表程序,支持视频播放

作者: admin 分类: 技术分享 发布时间: 2020-04-15 23:52

功能
支持多账户
支持显示文件夹大小
支持每天自动签到
支持异步缓存
支持隐藏指定文件夹和文件
支持整个目录,单层目录或单文件访问加密
支持展示任意目录,自定义根目录
支持只读挂载到nPlayer(WebDAV)
申请码
提示:这里会经常发申请码,有需求的可以直接使用,没需求的让出来就行。
CTList Apply Token申请码:

#2020.4.14
2674253DF2154B5A00F5DF05756E7652
9D0B2F6DFA114276DD9A954E6F9948DA
6190D9FF0597748CF164899045D4E210
B2329E6485CD5B7694D0719BF958131E
65F0062A94F68E0179B244D636D89BCD
61683B9642E04DFF0B9353E2E990FF32
231676C503495F33E738C64E791064E9
A656DF714A20A0D2D5E279D16983AB33
D81B56EFA750E69A9AB5EE131F56E4F1
A5177158C8FC44FB8D177B22684954F1
A14519C669990E611F06F5239B0690D2
43A81E7BE5AD2369DA81B7B31FBB4F69
28C3EBC5CB06A6CA9F0BE2F7A42D6F4A
C9E223825FD750FAD4FFEF2F5BBB603E
D77462297AF7F3C333770CAFA7A99CBB
0A65F0E3C54D01502AE1D987BEA1EF89
BDC77BE0C3C504CBC6861D19654ACAF9
D87CF362094468706A7C96F4CE190862
629B180D9AA05B340EFB140B796BF4FD
60EF6F6B8FF478F06EBBA5F8D097786F
1C0A10B53D249A276C9BEDEF98E5F9A3
BFD242F9E7E2E861AAC2C7C3AFF05418
4075B20EBCBFDEBD2B7341327E4D7A95
44CD247E86EF17BFB850A1ED1F29B868
832749B873F8B3AB20271FAA9CBD108E
C0FBDC73C6445660753173E4904270C7
A85895DCB7281C9A5C97B6BEC8F24525
064C591C151D8F14000E975E61FC606E
7E09D3E6C88FD1E40D75DDA0A86BDD26
8AC4C583974E70256E1B6F994947768C

#2020.4.15新增
619A60E465F6384E6E612A39E9792A02
76F3BCD10C053DE6F590E988B5794B73
3E3B5E2EBF9B7283E4D83BD6E7A22A4D
E016F9D4E7151252978396750464B7A6
BFDBAFAC6555D3D684808C79EEC89CD7
5C5C8313311ECC9AA2CE2124D7BEDE08
9A5CA3744DCD93399C0208D8F080A345
D0378BA424E024D9A7E6AFEDCF072892
2482219C2DB38A28B693C83123ECD330
1650CE4BA08450B3069877D3196CA580

#2020.4.15继续新增
C697525F70C3573A3BFFC35A593C882B
4010DB574F9E8BC6FCE699F7EED69291
912185D9CC84F7D88079408A4C315B05
C20341E5B58D429D96A95E4129D5F853
ADA16FC3CC9791041187E8E3DA734D2E
56CA0807F24FC7BF005CA61E59A3E562
18EDA147D328AE8E715FDEF465216672
7B3E000B3EA890C76620CB3F749DFD07
135EE1FDE7B0478E8816CFB8A707FDED
651CFE6712CC68CAB511854E5FC96B04
E7008EEC4B54ED547C3A401B6E9ACB10
8390CFC71D159058615798F55D4D4D6D
2E7C42E0D395B7D66DEE2C6A80116BF4
4C9F2B93B501653308970BB20E556A1D
4D48D713CE4D552955905E5A4E78C7AD
4438DC2F531054A9279A1745FF582530
E154D7F9A7D5A3B493D642C394A38640
976130C15FE5D932F8FF86C0E54F671C
CD0A3D8DB4079DFDF51802019D8EB95D
240EF1812AE40B5F494A4134E0F309B4
FF949E15A4BBD497C276497337266481
B79DDA22666B855CED75218526998BF9
F279A5404431D34A5320D15247ED4E32
DA56FAF28AA55EB3F2C27FE22BAC6443
0123798B2BFAF5648E76ADD6D37A8A99
EDD59DCE9717DEF0684B44AA55F3220D
25DFE5E6FD05E61EC3FDEC2596B89268
428AE41787E4E40CA81D3C9BD68A7B60
D1635D178945D06825F69DCD6FE8E521
11A8CC190EB8426E21D478FC21949AF3
安装
Github地址:https://github.com/MoeClub/CTList

这里只详细说下Linux的用法,Windows、MacOS系统二进制文件下载地址→传送门,使用方法和Linux都差不多。

1、申请天翼账号
老用户就不用申请了,新用户点击→传送门,选择短信验证码登录即可,这里联通、移动手机号都可以登录注册。

2、安装CTList

#新建并进入CTList目录
mkdir /opt/CTList && cd $_

#64位系统下载
wget https://raw.githubusercontent.com/MoeClub/CTList/master/exec/amd64/linux/CTList
#32位系统下载
wget https://raw.githubusercontent.com/MoeClub/CTList/master/exec/i386/linux/CTList
#arm架构下载
wget https://raw.githubusercontent.com/MoeClub/CTList/master/exec/arm/linux/CTList

#给予权限
chmod +x CTList
3、下载配置文件

#下载配置文件
wget https://raw.githubusercontent.com/MoeClub/CTList/master/config.json
#下载默认的主题文件
wget https://raw.githubusercontent.com/MoeClub/CTList/master/index.html
这里提供2款可在线浏览图片,在线观看视频等其他功能的主题文件→传送门,直接下载index.html文件,覆盖即可。

4、编辑配置文件
编辑配置文件config.json,大致说明如下:

[
{
“Enable”: 1, # 0: 关闭, 1: 打开
“UserName”: “”, # 天翼云网盘登陆用户名,不需要@189.cn.
“Password”: “”, # 天翼云网盘登陆密码
“CaptchaMode”: “0”, # 验证码. 0: 遇到验证码拒绝登陆, 1: 手动输入验证, 其他: 自动识别验证码的API.
“RefreshToken”: “”, # 天翼网盘会话. 保持默认, 如果出现异常, 请将该值清空.
“SubPath”: “/CTList”, # 指定某账户挂载在网站的某个目录, 多账户时每个目录值必须唯一.
“RootPathId”: “-11”, # 设置展示天翼网盘目录的ID, 根目录为 -11.
“HideItemId”: “0|-16”, # 不展示某个目录或文件, 填写其ID. 每项用”|”分隔.
“AuthItemId”: “”, # 加密某个目录或文件. “<文件或者目录的ID>?<加密模式>?<用户名>:<密码>”
“RefreshURL”: 189, # 下载直链缓存的秒数. 超时则被动更新.
“RefreshInterval”: 1800 # 刷新目录结构,如果不常更新,建议设置更长时间.
}
]
如果没啥特殊需求,只需要填写账号密码即可即前4项,且CaptchaMode后面将0改为https://api.moeclub.org/SampleCode用于识别登陆验证码,如果使用期间有修改过配置文件,需要重启CTList。

5、启动CTList
这里启动改成了授权模式,需要申请码获取授权码,获取授权码→传送门,Apply Token和用户名即手机号必填,且一个申请码只能绑定一个天翼云账号,绑定多个账号需要在同样的授权码上绑定其它账号。

#申请码使用提示
[Success]: 绑定成功.
[Query Mode]:查询模式, 查询授权码. 申请码已经被使用.
如果没有有效授权的用户, 运行程序时会出现Error! No Valid User.
获取到授权码后开始启动CTList:

#直接运行
/opt/CTList/CTList -a “AUTH_TOKEN” -bind 0.0.0.0 -port 8000

#后台运行
/opt/CTList/CTList -a “AUTH_TOKEN” -bind 0.0.0.0 -port 8000 -d
AUTH_TOKEN为获取到的授权码,8000为访问端口,运行前自行修改。

启动了后,就可以使用ip:8000/CTList访问程序了,后面为SubPath参数路径,自行修改。

如果你访问不了程序,可能要检查下防火墙端口,有安全组的也要放行下相关端口。

这里提供个CentOS系统防火墙开启命令,比如开放8000端口,大致如下:

#CentOS 6
iptables -I INPUT -p tcp –dport 8000 -j ACCEPT
service iptables save
service iptables restart

#CentOS 7
firewall-cmd –zone=public –add-port=8000/tcp –permanent
firewall-cmd –reload
6、开机自启
这里新建一个简单的systemd配置文件,适用CentOS 7、Debian 8+、Ubuntu 16+。

使用命令:

#设置你的运行监听端口,即你可以通过ip:端口访问程序,这里默认8000。
port=”8000″
#设置你的授权码,自行修改
AUTH_TOKEN=”xxxxxxx”
#将以下代码一起复制到SSH运行
cat > /etc/systemd/system/ctlist.service < /usr/local/caddy/Caddyfile

#https访问,该配置会自动签发SSL,请提前解析域名到VPS服务器
echo “www.moerats.com {
gzip
tls [email protected]
proxy / 127.0.0.1:8000
}” > /usr/local/caddy/Caddyfile
启动Caddy:

/etc/init.d/caddy start
就可以打开域名进行访问了。

卸载
#未设置开机自启
rm -rf /opt/CTList

#设置过开机自启
systemctl stop ctlist
systemctl disable ctlist
rm -rf /opt/CTList /etc/systemd/system/ctlist.service
使用问题
1、访问地址
根据配置文件中的SubPath项中参数访问具体网盘,一般SubPath的具体值在终端中显示在中括号内。

例如: “SubPath”: “/CTList”
访问: http://127.0.0.1:5189/CTList

例如: “SubPath”: “/”
访问: http://127.0.0.1:5189/
2、寻找目录ID
用于RootPathId、HideItemId、AuthItemId配置项,登陆https://cloud.189.cn,进入需要操作的目录,查看地址栏最后的数字就是这个目录的ID。

文件ID需要浏览器F12查看请求项。

RootPathId: 列表展示的根目录对应的天翼网盘文件夹ID, 天翼网盘根目录ID为 -11
HideItemId: 在展示目录中隐藏天翼网盘内的文件或文件夹,填写其ID,使用 “|” 分隔
AuthItemId: 在展示目录中加密天翼网盘内的文件或文件夹,使用 “|” 分隔
3、加密目录
AuthItemId配置项采用HTTP 401认证方式加密。

# 单个写法
“AuthItemId”: “-11?0?UserName:Password”
# 多个写法
“AuthItemId”: “-11?0?UserName:Password|-16?1?UserName:Password”

# 字段解析
<文件或者目录的ID>?<加密模式>?<用户名>:<密码>

# 加密模式,加密文件选0和1效果相同.
0: 只加密这一层文件夹,可以直接访问这层文件夹内部的内容.
1: 加密这个文件夹的所有子项目.
4、刷新策略

# 4个刷新逻辑完全异步,互不影响.
Token(登陆保活): 60 * 60 * 10
Cookie(会话授权): 60 * 30
RefreshURL(真实下载链接): 189 (配置文件可改 )
RefreshInterval(刷新目录结构): 60 * 15 (配置文件可改, 全局最小值生效 )
5、使用说明

Usage of CTList:
-bind string
Bind Address (default “127.0.0.1”)
-port string
Port (default “5189”)
-a string
Auth Token.
-c string
Config file. (default “config.json”)
-t string
Index file. (default “index.html”)
-json
Output json.
-d
Run in the background.
-l
Less output.
6、目录访问
SubPath配置项,控制目录访问

# 多账户时,确保 SubPath 项唯一.

当 SubPath 配置为空(“”)或者为单斜杆(“/”)时
访问路径为 http://0.0.0.0

当 SubPath 配置为具体字段(“/CTList”)时, “/CTList” 可以修改成自己喜欢的字段.
访问路径为 http://0.0.0.0/CTList
7、在nPlayer播放器中使用

# 网络 –> 添加 –> WebDAV
# 主机: 填写域名.
# 路径: 填写 SubPath 值. 如: /CTList
# 其他请按照情况填写.

# 优势: 在播放器中可以播放各种编码格式的视频.
# 可以适当的将最小缓存时间调小,提高浏览体验.
8、报错相关

400(Not Found URL): 未能找到该文件的链接.
404(Not Found): 未完成初次缓存目录结构或文件路径不正确.
422(Not Found Real URL): 未能生成真实的文件下载链接(一般是文件被举报了,无法下载).
5XX: 一般是服务器端的问题. 部分可能的情况有: 主程序没开, 端口不通, 反代配置不正确.
最后天翼云网盘APP会经常做活动,送空间容量和会员什么的,可以自己下载个app领一下福利,目前这里列举2个活动:

#免费领取3个月黄金会员
https://m.cloud.189.cn/zhuanti/2020/share-vip/web.html
#免费领取家庭云1T空间
https://m.cloud.189.cn/zhuanti/2019/1t-v2/web.html
最后该程序拿来搭建个下载站什么的基本够了,空间多的还可以下点电影啥的看看都行。

转自:Rat’s Blog

如果觉得我的文章对您有用,请随意赞赏。您的支持将鼓励我继续创作!