×

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

hqy hqy 发表于2025-01-09 16:29:59 浏览7 评论0

抢沙发发表评论

说明:之前介绍过很多OneDriveGoogle Drive网盘目录列表程序,但在国内使用的话,网络速度都不理想。最近使用天翼云网盘的人开始多了起来,在国内使用的话,速度还是很不错的,毕竟由电信骨干网支持,国内AWS为文件实际储存节点,基本上速度都是秒开,当然,看片也是无需等待,这里萌咖大佬就写了个天翼云网盘的目录列表程序CTList,安装也是十分简单,和博主之前介绍的OneList差不多,整个站点目录支持在nPlayer播放器中使用,之前通过BUG撸的30T和老用户10T2T空间的都可以利用一下,对于新用户,现在默认30G空间,但经常有送容量的活动,这里就说下安装方法。

截图

mportant; border-right: none !important; border-left: none !important; border-image: initial !important;">请输入图片描述
请输入图片描述

更新

【2021.07.30】1、修复因天翼更换登陆接口造成登录失败的问题,直接从github下载文件覆盖即可

【2021.06.01】1、适配kodi(WebDAV)2、优化性能

【2020.05.10】
优化文件访问/下载速度,已安装过的建议更新下,最新版地址:https://github.com/iiiiiii1/CTList。【2020.04.23】1、改善cookies保活机制2、增加强制HTML/WebDAV配置项3、加快资源释放

【2020.04.20】
现在开始停止送码,基本上留过言的都送了,项目暂时不会开发新功能,遇到BUG的留言即可。

【2020.04.19】
修复部分BUG,已使用上的可以进行更新修复

【2020.04.15】
该项目暂时关闭,重新补发30个码,安装了未激活的或者已用的可以继续激活使用。

功能

  • 支持多账户

  • 支持显示文件夹大小

  • 支持每天自动签到

  • 支持异步缓存

  • 支持隐藏指定文件夹和文件

  • 支持整个目录,单层目录或单文件访问加密

  • 支持展示任意目录,自定义根目录

  • 支持只读挂载到PotPlayer(WebDAV), nPlayer(WebDAV),kodi(WebDAV)

申请码

提示:获取到授权码后,只能和绑定的账号一起用,在任意服务器都可以安装使用。

CTList Apply Token申请码:

#2020.4.142674253DF2154B5A00F5DF05756E76529D0B2F6DFA114276DD9A954E6F9948DA6190D9FF0597748CF164899045D4E210B2329E6485CD5B7694D0719BF958131E65F0062A94F68E0179B244D636D89BCD61683B9642E04DFF0B9353E2E990FF32231676C503495F33E738C64E791064E9A656DF714A20A0D2D5E279D16983AB33D81B56EFA750E69A9AB5EE131F56E4F1A5177158C8FC44FB8D177B22684954F1A14519C669990E611F06F5239B0690D243A81E7BE5AD2369DA81B7B31FBB4F6928C3EBC5CB06A6CA9F0BE2F7A42D6F4AC9E223825FD750FAD4FFEF2F5BBB603ED77462297AF7F3C333770CAFA7A99CBB0A65F0E3C54D01502AE1D987BEA1EF89BDC77BE0C3C504CBC6861D19654ACAF9D87CF362094468706A7C96F4CE190862629B180D9AA05B340EFB140B796BF4FD60EF6F6B8FF478F06EBBA5F8D097786F1C0A10B53D249A276C9BEDEF98E5F9A3BFD242F9E7E2E861AAC2C7C3AFF054184075B20EBCBFDEBD2B7341327E4D7A9544CD247E86EF17BFB850A1ED1F29B868832749B873F8B3AB20271FAA9CBD108EC0FBDC73C6445660753173E4904270C7A85895DCB7281C9A5C97B6BEC8F24525064C591C151D8F14000E975E61FC606E7E09D3E6C88FD1E40D75DDA0A86BDD268AC4C583974E70256E1B6F994947768C#2020.4.15新增
619A60E465F6384E6E612A39E9792A0276F3BCD10C053DE6F590E988B5794B733E3B5E2EBF9B7283E4D83BD6E7A22A4DE016F9D4E7151252978396750464B7A6BFDBAFAC6555D3D684808C79EEC89CD75C5C8313311ECC9AA2CE2124D7BEDE089A5CA3744DCD93399C0208D8F080A345D0378BA424E024D9A7E6AFEDCF0728922482219C2DB38A28B693C83123ECD3301650CE4BA08450B3069877D3196CA580C697525F70C3573A3BFFC35A593C882B4010DB574F9E8BC6FCE699F7EED69291912185D9CC84F7D88079408A4C315B05C20341E5B58D429D96A95E4129D5F853ADA16FC3CC9791041187E8E3DA734D2E56CA0807F24FC7BF005CA61E59A3E56218EDA147D328AE8E715FDEF4652166727B3E000B3EA890C76620CB3F749DFD07135EE1FDE7B0478E8816CFB8A707FDED651CFE6712CC68CAB511854E5FC96B04E7008EEC4B54ED547C3A401B6E9ACB108390CFC71D159058615798F55D4D4D6D2E7C42E0D395B7D66DEE2C6A80116BF44C9F2B93B501653308970BB20E556A1D4D48D713CE4D552955905E5A4E78C7AD4438DC2F531054A9279A1745FF582530E154D7F9A7D5A3B493D642C394A38640976130C15FE5D932F8FF86C0E54F671CCD0A3D8DB4079DFDF51802019D8EB95D240EF1812AE40B5F494A4134E0F309B4FF949E15A4BBD497C276497337266481B79DDA22666B855CED75218526998BF9F279A5404431D34A5320D15247ED4E32DA56FAF28AA55EB3F2C27FE22BAC64430123798B2BFAF5648E76ADD6D37A8A99EDD59DCE9717DEF0684B44AA55F3220D25DFE5E6FD05E61EC3FDEC2596B89268428AE41787E4E40CA81D3C9BD68A7B60D1635D178945D06825F69DCD6FE8E52111A8CC190EB8426E21D478FC21949AF3#2020.4.23新增
1D15BC7C9D1F144389A2B75FCCE8E4EE941E7C1D8564D0B6BB38D4183EB2AAD43B48BBF789A9481A53C0EFC5C6E88C968046CF262FF4488553CE9AB6FC5A2ED7B402B08B8386F612D7A087136F3029DF7FD3ADFDEADEF2B184538B5244CF509635E86A05763C3F10A6C9D4FB9423000A3A60EE7341E2D17E228E8D541AE19B5F329586545FEA6221827F95EC39377CAA6C519BA5CB4CD3F0BE5C00D9B679D329#2020.4.25新增
205D21D3B34F479D0F64E1F1C5DC964795BFADD620483E7D6BB7B8D7957E8262587BA47676352B4F9E11925E4793778298DFD8A200050BE7D9A8DC7BBEE1FF5E1E0BFF9D6D598FF146475A641725C63C4A9ACDA1F26DA156E34D7AF2CDBD3FA320F1F9C98A487369745DD9EDC5B8ABC0C051441120C80489412E40C6069980B53DCE9DF07BFCEE09A4EE17AC35B973E1993011668DA5D80ACD8BDCDEDABF8DD2

安装

Github地址:https://github.com/MoeClub/CTList

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

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

2、安装CTList

#新建并进入CTList目录mkdir /opt/CTList && cd $_#64位系统下载wget https://raw.githubusercontent.com/iiiiiii1/CTList/master/exec/amd64/linux/CTList#32位系统下载wget https://raw.githubusercontent.com/iiiiiii1/CTList/master/exec/i386/linux/CTList#arm架构下载wget https://raw.githubusercontent.com/iiiiiii1/CTList/master/exec/arm/linux/CTList#给予权限chmod +x CTList

3、下载配置文件

#下载配置文件wget https://raw.githubusercontent.com/iiiiiii1/CTList/master/config.json#下载默认的主题文件wget https://raw.githubusercontent.com/iiiiiii1/CTList/master/index.html

这里提供2款可在线浏览图片,在线观看视频等其他功能的主题文件→传送门,直接下载index.html文件,覆盖即可。

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

[
    {        "Enable": 1,                  # 0: 关闭, 1: 打开                                              
        "UserName": "",               # 天翼云网盘登陆用户名,不需要@189.cn.                                            
        "Password": "",               # 天翼云网盘登陆密码                                            
        "CaptchaMode": "0",           # 验证码. 0: 遇到验证码拒绝登陆, 1: 手动输入验证, 其他: 自动识别验证码的API.             
        "ViewMode": 0,                # 显示模式. 0: 自动识别. 1: 只使用网页模式. 2:只使用WebDAV模式.                                 
        "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、调高limits
这里调整下limitslinux下可能由于高并发情况下会出错,使用命令:

[ -f /etc/security/limits.conf ] && LIMIT='262144' && sed -i '/^\(\*\|root\)[[:space:]]*\(hard\|soft\)[[:space:]]*\(nofile\|memlock\)/d' /etc/security/limits.conf && echo -ne "*\thard\tmemlock\t${LIMIT}\n*\tsoft\tmemlock\t${LIMIT}\nroot\thard\tmemlock\t${LIMIT}\nroot\tsoft\tmemlock\t${LIMIT}\n*\thard\tnofile\t${LIMIT}\n*\tsoft\tnofile\t${LIMIT}\nroot\thard\tnofile\t${LIMIT}\nroot\tsoft\tnofile\t${LIMIT}\n\n" >>/etc/security/limits.conf

windows系统下不需要调。

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

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

这里如果你想支持下萌咖大佬,可以前往萌咖杂货店→传送门,选择捐赠 #11即可。

获取到授权码后开始启动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 6iptables -I INPUT -p tcp --dport 8000 -j ACCEPT
service iptables save
service iptables restart#CentOS 7firewall-cmd --zone=public --add-port=8000/tcp --permanentfirewall-cmd --reload

7、开机自启
这里新建一个简单的systemd配置文件,适用CentOS 7Debian 8+Ubuntu 16+

使用命令:

#设置你的运行监听端口,即你可以通过ip:端口访问程序,这里默认8000。port="8000"#设置你的授权码,自行修改AUTH_TOKEN="xxxxxxx"#将以下代码一起复制到SSH运行cat > /etc/systemd/system/ctlist.service <<EOF
[Unit]
Description=ctlist
After=network.target

[Service]
Type=simple
ExecStart=/opt/CTList/CTList -a ${AUTH_TOKEN} -bind 0.0.0.0 -port ${port} -l
Restart=on-failure

[Install]
WantedBy=multi-user.target
EOF#启动并设置开机自启systemctl start ctlist
systemctl enable ctlist

相关命令:

启动:systemctl start ctlist
停止:systemctl stop ctlist
重启:systemctl restart ctlist
查看状态:systemctl status ctlist

绑定域名

提示:有宝塔面板的直接使用宝塔就行,没有的就可以使用caddy,2选1即可。

宝塔面板

先进入宝塔面板,然后点击左侧网站,添加站点,再点击添加好了的域名名称,这时候就进入了站点配置,点击反向代理,目标URL填入http://127.0.0.1:8000,不要设置缓存,再启用反向代理即可。

如果要启用SSL,就需要在设置反向代理之前,直接在站点配置点击SSL,申请免费let证书,然后再启用反代即可。

Caddy绑定

安装Caddy

wget -N --no-check-certificate https://raw.githubusercontent.com/iiiiiii1/doubi/master/caddy_install.sh && chmod +x caddy_install.sh && bash caddy_install.sh#备用地址wget -N --no-check-certificate https://www.moerats.com/usr/shell/Caddy/caddy_install.sh && chmod +x caddy_install.sh && bash caddy_install.sh

配置Caddy

#以下全部内容是一个整体,请修改域名后一起复制到SSH运行!#http访问,该配置不会自动签发SSLecho "www.moerats.com {
 gzip
 tls admin@moerats.com
 proxy / 127.0.0.1:8000
}" > /usr/local/caddy/Caddyfile#https访问,该配置会自动签发SSL,请提前解析域名到VPS服务器echo "www.moerats.com {
 gzip
 tls admin@moerats.com
 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

多账号配置

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

以上为2个账号配置,注意SubPath不能一样,如果3个账号,直接在[]里面加一次配置文件代码,注意中间使用英文逗号,区分。

使用问题

1、访问地址
根据配置文件中的SubPath项中参数访问具体网盘,一般SubPath的具体值在终端中显示在中括号内。

例如: "SubPath": "/CTList"访问: http://127.0.0.1:5189/CTList例如: "SubPath": "/"访问: http://127.0.0.1:5189/

2、寻找目录ID
用于RootPathIdHideItemIdAuthItemId配置项,登陆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 (配置文件可改 <RefreshURL>)
RefreshInterval(刷新目录结构): 60 * 15  (配置文件可改, 全局最小值生效 <RefreshInterval>)

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#免费领取1年黄金会员,图片随便传个就过了https://m.cloud.189.cn/zhuanti/2020/teacher-vip/web.html#免费领取家庭云1T空间https://m.cloud.189.cn/zhuanti/2019/1t-v2/web.html

最后该程序拿来搭建个下载站什么的基本够了,空间多的还可以下点电影啥的看看都行。


打赏

本文链接:https://www.kinber.cn/post/4563.html 转载需授权!

分享到:


推荐本站淘宝优惠价购买喜欢的宝贝:

image.png

 您阅读本篇文章共花了: 

群贤毕至

访客