热门标签 | HotTags
当前位置:  开发笔记 > 编程语言 > 正文

CuteOne:一款基于Python3的OneDrive多网盘挂载程序,带会员/同步等功能

说明:现在OneDrive挂载目录程序越来越多了,之前水了很多了,包括PyOne、OneIndex、OLAINDEX和OneList,近期又出现了个CuteOne,一个基于Pyth

文章目录[隐藏]

  • 截图
  • 功能简述
  • 安装

说明:现在OneDrive挂载目录程序越来越多了,之前水了很多了,包括PyOne、OneIndex、OLAINDEX和OneList,近期又出现了个CuteOne,一个基于Python3OneDrive多网盘挂载程序,功能的话,看起来还是挺不错的,支持多盘负载、在线查看、在线上传、下载、多网盘同步、主从同步、在线分享、文件夹权限管理、会员功能、等级制度、付费查看、密码查看、支付模块、主题切换、极速缓存。至于体验的话,可能暂时会差点,毕竟才出来不到一个月的项目,不过看得出来作者也是有理想的人,所以会长期维护更新,让其越来越好,这里就大概介绍下。

截图

请输入图片描述
请输入图片描述
请输入图片描述
请输入图片描述
请输入图片描述

功能简述

#驱动列表
其实驱动列表你们把他当成一个分类即可,可是为啥里面可以添加很多网盘呢?
那么重点来了,因为有负载切换的功能,当你一个网盘很多人在看这个网盘的同一个视频
可能会变慢,我猜的; 所以可以切换到另外一个网盘里面的相同资源看,实现切换线路;
然后这么设计是也是为了资源备份用的,意思就是这个驱动列表下的所有网盘内容需要保持一致;
如果不一致,那么就没办法切换负载。

#主从备份
主从备份的功能就是给驱动下的所有网盘进行同步,但是前提是驱动下只能有一个主盘,别的都是从盘;
因为主从备份是拉取主盘的内容,备份到从盘里的; 所以你们可以在主盘里面看到上传按钮,而从盘没有;
这个功能是预防你们网盘被封,然后有备份盘当做备用;这也是一个卖资源盘的办法。

#权限管理
权限管理其实就是给文件夹设置密码啦;
然后你们可以看到还有群组管理,这个是干啥的呢?嗯,就是设置VIP的意思,就是这个群组可以免密查看你加密的文件路径。

#会员管理
会员管理顾名思义啦,他还有一个功能是和权限管理的群组是挂钩的,意思就是会员你可以给他分配群组,
也就是所谓的VIP制度,让会员可以免密查看一些加密的文件夹。

#文件管理
因为有了会员,所以想给会员也能上传文件,然后分享,所以出了这个会员的文件管理,这里可以单独给会员设置存储盘,会员上传的文件就会在这个里面。

#任务管理
这个就是你在驱动列表的网盘里面上传了文件,这里可以看到那个文件当前的同步状态而已。

#开始同步和更新缓存
开始同步只有你点击管理了之后 进入驱动下的网盘列表,你才看到这个按钮,因为他是用来主从备份的,你不需要主从备份,你就别按他;

更新缓存,如果你不更新缓存,你会发现你前端没有文件,这个其实就是拉取一下最新的数据而已。

#文件地址的缓存周期
OneDrive的文件地址是有时效性的,大概五分钟这样吧,所以我这边使用里类推模式来更新地址缓存,什么是类推,就是当这个文件五分钟内有人访问一次,
数据库就会是最新文件的地址,以此类推,如果文件热度很高,地址是一直是最新的,如果热度低,只要有一个人访问,地址就会缓存到最新的到数据库。

安装

Github地址:https://github.com/Hackxiaoya/CuteOne

环境需求:Python3Mysql >= 5.5MongoDBNginx/Apache

1、安装宝塔

#CentOS系统
wget -O install.sh http://download.bt.cn/install/install_6.0.sh && sh install.sh
#Ubuntu系统
wget -O install.sh http://download.bt.cn/install/install-ubuntu_6.0.sh && sudo bash install.sh
#Debian系统
wget -O install.sh http://download.bt.cn/install/install-ubuntu_6.0.sh && bash install.sh

安装完成后,进入面板,点击左侧软件管理,然后安装MysqlMongodbNginx。且Debian安装MongoDb之前还需要使用命令apt install sudo,不然可能存在MongoDb启动不了的情况。

安装完成后再点击左侧数据库-添加数据库,设置好Mysql数据库信息。

2、安装Python3

#CentOS系统
wget https://www.moerats.com/usr/shell/Python3/CentOS_Python3.6.sh && sh CentOS_Python3.6.sh
#Debian系统
wget https://www.moerats.com/usr/shell/Python3/Debian_Python3.6.sh && sh Debian_Python3.6.sh
#Ubuntu系统
apt update
apt install python3-pip python3-setuptools python3-dev python3-wheel build-essential -y

3、安装依赖

wget https://github.com/Hackxiaoya/CuteOne/archive/dev.zip  
unzip dev.zip
mv CuteOne-dev CuteOne
cd CuteOne
pip3 install -r requirements.txt

4、运行程序
这里没用作者提供的uwsgi方式运行,换成了gunicorn,使用命令:

pip3 install gunicorn
gunicorn app:app -b 0.0.0.0:8000

然后再访问http://ip:8000/install进行安装。如果打不开该地址的,点击宝塔面板左侧安全-放行8000端口。
请输入图片描述
记得安装的时候MongoDB默认没有设置用户名密码,所以填写Mongodb的时候,直接留空下一步。

安装完成后,使用Ctrl+C断开运行,再使用命令后台运行:

gunicorn app:app -b 127.0.0.1:8000 -D

接下来我们需要使用域名反代并添加SSL,不然访问会有点问题。

5、域名反代
点击左侧网站,添加站点,然后再点击添加好了的域名名称,这时候就进入了站点配置,点击反向代理,目标URL填入http://127.0.0.1:8000,再启用反向代理,然后点击SSL,申请免费的Let's Encrypt证书,并强制HTTPS

接下来再点击配置文件,进行如下修改:

#加上中间三句
location / 
    {
        ...
        
        proxy_buffering off;
        proxy_cache off;
        proxy_set_header X-Forwarded-Proto $scheme;
                
        ...
    }

此时就可以直接通过域名访问了,首先前台是访问不了的,需要先访问https://domain.com/admin,然后添加驱动,添加的时候设置成默认主页,不然首页打开会有问题。
请输入图片描述
再点击驱动管理-添加网盘。
请输入图片描述
填入相关信息绑定网盘,注意code那里填code=&之间的代码。
请输入图片描述
再点击驱动管理的更新缓存即可,然后就可以访问首页了。

这里要注意的是,一般用户注册的时候,上传文件是会有问题的,管理员需要在CuteOne后台,编辑用户,将用户的用户文件盘改成添加网盘的ID即可,这样用户上传文件后,会保存在相应的OneDrive网盘,并且保存的文件夹以用户ID命名。

最后作者正在开发一些该程序的模块和插件,目前开发了影视模块、图床模块、迅雷盒子自动推送插件,如果有其它意见的可以直接去Github提问,地址→传送门。


推荐阅读
  • Nginx使用AWStats日志分析的步骤及注意事项
    本文介绍了在Centos7操作系统上使用Nginx和AWStats进行日志分析的步骤和注意事项。通过AWStats可以统计网站的访问量、IP地址、操作系统、浏览器等信息,并提供精确到每月、每日、每小时的数据。在部署AWStats之前需要确认服务器上已经安装了Perl环境,并进行DNS解析。 ... [详细]
  • Nginx使用(server参数配置)
    本文介绍了Nginx的使用,重点讲解了server参数配置,包括端口号、主机名、根目录等内容。同时,还介绍了Nginx的反向代理功能。 ... [详细]
  • 这是原文链接:sendingformdata许多情况下,我们使用表单发送数据到服务器。服务器处理数据并返回响应给用户。这看起来很简单,但是 ... [详细]
  • 本文介绍了在mac环境下使用nginx配置nodejs代理服务器的步骤,包括安装nginx、创建目录和文件、配置代理的域名和日志记录等。 ... [详细]
  • 在CentOS/RHEL 7/6,Fedora 27/26/25上安装JAVA 9的步骤和方法
    本文介绍了在CentOS/RHEL 7/6,Fedora 27/26/25上安装JAVA 9的详细步骤和方法。首先需要下载最新的Java SE Development Kit 9发行版,然后按照给出的Shell命令行方式进行安装。详细的步骤和方法请参考正文内容。 ... [详细]
  • Go Cobra命令行工具入门教程
    本文介绍了Go语言实现的命令行工具Cobra的基本概念、安装方法和入门实践。Cobra被广泛应用于各种项目中,如Kubernetes、Hugo和Github CLI等。通过使用Cobra,我们可以快速创建命令行工具,适用于写测试脚本和各种服务的Admin CLI。文章还通过一个简单的demo演示了Cobra的使用方法。 ... [详细]
  • centos安装Mysql的方法及步骤详解
    本文介绍了centos安装Mysql的两种方式:rpm方式和绿色方式安装,详细介绍了安装所需的软件包以及安装过程中的注意事项,包括检查是否安装成功的方法。通过本文,读者可以了解到在centos系统上如何正确安装Mysql。 ... [详细]
  • 目录浏览漏洞与目录遍历漏洞的危害及修复方法
    本文讨论了目录浏览漏洞与目录遍历漏洞的危害,包括网站结构暴露、隐秘文件访问等。同时介绍了检测方法,如使用漏洞扫描器和搜索关键词。最后提供了针对常见中间件的修复方式,包括关闭目录浏览功能。对于保护网站安全具有一定的参考价值。 ... [详细]
  • Java如何导入和导出Excel文件的方法和步骤详解
    本文详细介绍了在SpringBoot中使用Java导入和导出Excel文件的方法和步骤,包括添加操作Excel的依赖、自定义注解等。文章还提供了示例代码,并将代码上传至GitHub供访问。 ... [详细]
  • .NetCoreWebApi生成Swagger接口文档的使用方法
    本文介绍了使用.NetCoreWebApi生成Swagger接口文档的方法,并详细说明了Swagger的定义和功能。通过使用Swagger,可以实现接口和服务的可视化,方便测试人员进行接口测试。同时,还提供了Github链接和具体的步骤,包括创建WebApi工程、引入swagger的包、配置XML文档文件和跨域处理。通过本文,读者可以了解到如何使用Swagger生成接口文档,并加深对Swagger的理解。 ... [详细]
  • Tomcat安装与配置教程及常见问题解决方法
    本文介绍了Tomcat的安装与配置教程,包括jdk版本的选择、域名解析、war文件的部署和访问、常见问题的解决方法等。其中涉及到的问题包括403问题、数据库连接问题、1130错误、2003错误、Java Runtime版本不兼容问题以及502错误等。最后还提到了项目的前后端连接代码的配置。通过本文的指导,读者可以顺利完成Tomcat的安装与配置,并解决常见的问题。 ... [详细]
  • Skywalking系列博客1安装单机版 Skywalking的快速安装方法
    本文介绍了如何快速安装单机版的Skywalking,包括下载、环境需求和端口检查等步骤。同时提供了百度盘下载地址和查询端口是否被占用的命令。 ... [详细]
  • 解决php错误信息不显示在浏览器上的方法
    本文介绍了解决php错误信息不显示在浏览器上的方法。作者发现php中的各种错误信息并不显示在浏览器上,而是需要在日志文件中查看。为了解决这个问题,作者提供了一种解决方式:通过修改php.ini文件中的display_errors参数为On,并重启服务。这样就可以在浏览器上直接显示php错误信息了。 ... [详细]
  • 深入解析Linux下的I/O多路转接epoll技术
    本文深入解析了Linux下的I/O多路转接epoll技术,介绍了select和poll函数的问题,以及epoll函数的设计和优点。同时讲解了epoll函数的使用方法,包括epoll_create和epoll_ctl两个系统调用。 ... [详细]
  • Dockerfile构建镜像的指令和说明
    本文介绍了Dockerfile是用来构建镜像的文本文件,其中包含了构建镜像所需的指令和说明。通过创建一个Dockerfile文件并编写内容,可以快速创建自定义的镜像。文章还提供了一个示例,展示了如何使用Dockerfile创建一个本地构建的nginx镜像,并通过docker images命令查看镜像的版本。希望本文对大家的学习有所帮助,并希望大家多多支持编程笔记。 ... [详细]
author-avatar
張小媫_602
这个家伙很懒,什么也没留下!
PHP1.CN | 中国最专业的PHP中文社区 | DevBox开发工具箱 | json解析格式化 |PHP资讯 | PHP教程 | 数据库技术 | 服务器技术 | 前端开发技术 | PHP框架 | 开发工具 | 在线工具
Copyright © 1998 - 2020 PHP1.CN. All Rights Reserved | 京公网安备 11010802041100号 | 京ICP备19059560号-4 | PHP1.CN 第一PHP社区 版权所有