Rat's

CentOS/Debian安装人人影视客户端,下载资源并自动上传到OneDrive网盘
说明:人人影视客户端,主要是一个下载视频的利器,上面的的美剧、日结、韩剧等资源都很多,而且还带搜索功能,可以直接搜...
扫描右侧二维码阅读全文
06
2018/12

CentOS/Debian安装人人影视客户端,下载资源并自动上传到OneDrive网盘

说明:人人影视客户端,主要是一个下载视频的利器,上面的的美剧、日结、韩剧等资源都很多,而且还带搜索功能,可以直接搜索外部的资源。而且博主测试了下,很多资源下载速度基本可以跑满服务器带宽,加上有大佬搞了个人人影视自动上传到OneDrive网盘脚本,不过需要配合PyOne使用。这里博主就修改了下该脚本,配合博客另一个上传脚本一起使用,这样就不需要依赖PyOne了,可以直接单独使用了,而且上传完会自动删除服务器的资源,不占用过多空间。

截图

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

安装

说明:官方客户端只有CentOS系统,不过博主发现客户端也能在DebianUbuntu上使用,所以这里就都写下教程。

博主只测试过CentOS 7Debian 8+,理论上Ubuntu 16+也可以,不过为了稳定使用,还是建议优先使用CentOS 7

1、安装依赖

#CentOS 7系统
yum install make wget crontabs -y

#Debian、Ubuntu系统
apt install make cron -y

2、安装rar

#32位系统
wget http://www.rarsoft.com/rar/rarlinux-4.0.1.tar.gz
tar -zxvf rarlinux-4.0.1.tar.gz
cd rar
make

#64位系统
wget http://www.rarlab.com/rar/rarlinux-x64-5.3.0.tar.gz
tar -zxvf rarlinux-x64-5.3.0.tar.gz
cd rar
make

安装完成后,我们再清理下无用文件,使用命令:

cd ..
rm -rf rarlinux-*.tar.gz rar

3、下载人人影视

#下载客户端
wget http://appdown.rrys.tv/rrshareweb_linux.rar
#解压
unrar x rrshareweb_linux.rar
#解压CentOS 7压缩包,这里测试的Debian、Ubuntu都可以使用该包,CentOS 6的没试过
tar -zxvf rrshareweb_centos7.tar.gz
#删除无用文件
rm -rf rrshareweb*.tar.gz rrshareweb_linux.rar WEB*.png
#运行客户端
cd rrshareweb
./rrshareweb

然后访问http://ip:3001即可,初始密码为:123456,进入界面后先点击右上方设置,修改下存储路径,不然下载会没速度。

如果你打不开界面,那么需要开启防火墙端口了,可以先使用Ctrl+C断开运行,然后使用命令:

#CentOS 7系统
firewall-cmd --zone=public --add-port=3001/tcp --permanent
firewall-cmd --reload

最后再重启运行即可。

4、开机自启
为了我们使用方便些,这里可以使用Systemctl守护进程,并加入开机自启。

#以下是一整条命令,一起复制到SSH客户端运行
cat > /etc/systemd/system/renren.service <<EOF
[Unit]
Description=RenRen server
After=network.target
Wants=network.target

[Service]
Type=simple
PIDFile=/var/run/renren.pid
ExecStart=/root/rrshareweb/rrshareweb
RestartPreventExitStatus=23
Restart=always
User=root

[Install]
WantedBy=multi-user.target
EOF

开始启动:

systemctl start renren

查看状态:

systemctl status renren

如果显示active(running)即开启成功。

设置开机自启:

systemctl enable renren

配置上传

1、安装Python 3
使用脚本安装:

#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 16+自带Python3,所以只需要安装pip3就可以了
apt install python3-pip -y

安装requests

pip3 install requests

2、安装Onedrive上传脚本
方法参考:VPS上传文件到OneDrive网盘脚本,安装好脚本并认证下OneDrive账号即可。

3、添加自动上传脚本

#新建文件夹存放上传脚本
mkdir /root/upod
#新建检测脚本check.py,填入你的客户端运行端口和解锁密码后一起复制到ssh客户端运行
cat > /root/upod/check.py <<EOF
# -*- coding: utf-8 -*
import requests
import os
ip="127.0.0.1"
port="你的端口"
passwd="你的解锁密码"
url="http://"+str(ip)+":"+str(port)+"/api/unlock?passwd="+str(passwd)
workingtaskurl="http://"+str(ip)+":"+str(port)+"/api/workingtask"
finishedtaskurl="http://"+str(ip)+":"+str(port)+"/api/finishedtask"
deletetaskurl="http://"+str(ip)+":"+str(port)+"/api/deletetask"
s=requests.session()
s.get(url=url)
c=s.get(workingtaskurl).text
d=s.get(finishedtaskurl)
dict=(eval(d.text))
for i in dict['tasks']:
    ids=i['file_id']
    filename=i['file_name']
    os.system("bash /root/upod/work.sh "+"\""+filename+"\"")
    data={
        'ids':'["'+ids+'"]',
        'delfile':1
    }
    s.post(deletetaskurl,data=data)
print("task finish")
EOF

新建自动上传脚本,使用命令:

nano /root/upod/work.sh

先将脚本里的下载目录/root/down替换成你自己的,记得有两个位置要替换,然后再复制进去。

#!/bin/bash
time=$(date "+%Y%m%d%H%M%S")
filename=${time}${1}
#time=$(date "+%Y%m%d-%H%M%S")
filedir=${filename}${time}
echo "$filedir"
echo "$filename"
mkdir -p /temp/"$filedir"/
mv /root/down/"$1" /temp/"$filedir"/"$filename"
eval onedrive-d \'/temp/"$filedir"\'
rm -rf /temp/"$filedir"
rm -rf /root/down/mask/

再使用Ctrl+XY保存退出。这里注意下check.py脚本里面的work.sh脚本路径最好为绝对路径,不然容易出问题。

4、测试上传脚本
首先我们可以先下载一个电影资源,然后执行命令:

python3 /root/upod/check.py

如果输出Successfully uploaded字样则成功,反之请检查你之前的操作。
请输入图片描述

5、定时执行上传脚本
新建定时任务:

#设置为每分钟执行一次
echo "*/1 * * * * python3 /root/upod/check.py" > bt.cron
crontab bt.cron
rm -rf bt.cron

最后使用crontab -l命令查看添加成功没。成功的话,就基本上完成了安装步骤。

提示

该客户端是不支持在线观看的,如果对在线观看有需求的话,可以配合几个OneDrive列表程序实现在线观看了,好处都不消耗服务器流量,这里列举几个:

#PyOne
手动安装:https://www.moerats.com/archives/734/
脚本安装:https://www.moerats.com/archives/806/
Docker安装:https://www.moerats.com/archives/799/

#OneIndex
手动安装:https://www.moerats.com/archives/592/
脚本安装:https://www.moerats.com/archives/692/

#OLAINDEX
手动安装:https://www.moerats.com/archives/765/

参考链接

影视安装:https://www.abbeyok.com/archives/213
上传脚本:https://blog.mark56.cn/archives/101/
需要Office365 E3 MSDN 25(带全局管理员)的可去萌咖杂货铺购买→【点击访问
最后修改:2018 年 12 月 06 日 03 : 45 PM

发表评论

51 条评论

  1. 梁Sir

    我发现是上传到了onedrive的根目录,可以自动上传到onedrive的指定文件夹内吗?

    1. Rat's
      @梁Sir

      修改work.sh脚本里的上传命令,eval onedrive-d -f 文件夹 '/temp/"$filedir"'。在中间加个 -f 文件夹 。比如 -f RATS。就是上传到RATS文件夹。

  2. LC137871

    博主,用python3 /root/upod/check.py手动上传没有问题,而自动上传又有错误onedrive-d: command not found
    日志如下:
    Subject: Cron <root@centos-s-1vcpu-1gb-sgp1-01> python3 /root/upod/check.py
    Content-Type: text/plain; charset=UTF-8
    Auto-Submitted: auto-generated
    Precedence: bulk
    X-Cron-Env: <XDG_SESSION_ID=7>
    X-Cron-Env: <XDG_RUNTIME_DIR=/run/user/0>
    X-Cron-Env: <LANG=en_US.UTF-8>
    X-Cron-Env: <SHELL=/bin/sh>
    X-Cron-Env: <HOME=/root>
    X-Cron-Env: <PATH=/usr/bin:/bin>
    X-Cron-Env: <LOGNAME=root>
    X-Cron-Env: <USER=root>
    Message-Id: <20181215070701.B33DF46973B@centos-s-1vcpu-1gb-sgp1-01.localdomain>
    Date: Sat, 15 Dec 2018 15:07:01 +0800 (CST)
    20181215150701Mission.Impossible.碟中谍S03E23.中英双语字幕.译制组.mp420181215150701
    20181215150701Mission.Impossible.碟中谍S03E23.中英双语字幕.译制组.mp4
    /root/upod/work.sh: line 10: onedrive-d: command not found
    task finish
    望能给予指导,非常感谢!

    1. Rat's
      @LC137871

      应该是PATH变量缺少/usr/local/bin目录,你可以在sh脚本最上面加一行export PATH=/usr/local/bin:$PATH。

  3. winic57

    Rat大大,请问能给个py配合aria2自动上传的脚本嘛,不想装Pyone

    1. Rat's
      @winic57

      py是什么?

  4. 00000

    请问大佬,下载没有速度,是要把下载路径改成什么呢?谢谢。

    1. Rat's
      @00000

      改成一个存在的文件夹。比如/root

  5. LC137871

    你好,请问这是什么原因:
    [root@centos-s-1vcpu-1gb-sgp1-01 ~]# python3 /root/upod/check.py
    20181214145340阿尔罕布拉宫的回忆EP04.720p.mp420181214145340
    20181214145340阿尔罕布拉宫的回忆EP04.720p.mp4
    Invalid item.
    task finish

    1. Rat's
      @LC137871

      上传其它文件也是这个问题?

      1. LC137871
        @Rat's

        是的,
        我又在新VPS安装后,不能自动上传,手动没有问题,最后一句/bin/sh: python3: command not found,是不是这有问题
        From root@lzcmj.localdomain Fri Dec 14 19:50:01 2018
        Return-Path: <root@lzcmj.localdomain>
        X-Original-To: root
        Delivered-To: root@lzcmj.localdomain
        Received: by lzcmj.localdomain (Postfix, from userid 0)

        id C28BD4B63B1; Fri, 14 Dec 2018 19:50:01 +0800 (CST)

        From: "(Cron Daemon)" <root@lzcmj.localdomain>
        To: root@lzcmj.localdomain
        Subject: Cron <root@lzcmj> python3 /root/upod/check.py
        Content-Type: text/plain; charset=UTF-8
        Auto-Submitted: auto-generated
        Precedence: bulk
        X-Cron-Env: <XDG_SESSION_ID=9>
        X-Cron-Env: <XDG_RUNTIME_DIR=/run/user/0>
        X-Cron-Env: <LANG=en_US.UTF-8>
        X-Cron-Env: <SHELL=/bin/sh>
        X-Cron-Env: <HOME=/root>
        X-Cron-Env: <PATH=/usr/bin:/bin>
        X-Cron-Env: <LOGNAME=root>
        X-Cron-Env: <USER=root>
        Message-Id: <20181214115001.C28BD4B63B1@lzcmj.localdomain>
        Date: Fri, 14 Dec 2018 19:50:01 +0800 (CST)

        /bin/sh: python3: command not found

        1. Rat's
          @LC137871

          提示你没安装python3。

  6. c4

    之前听一个老哥说这个客户端会挖矿,我就留意了一下,上传限制到了100k,没有下载任务的时候,rrshareweb却占了60%的cpu,不知道是不是我个人的问题

    1. Rat's
      @c4

      这个会共享带宽出去,让资源不会死,可能就是带宽挖矿吧,你说的cpu占用问题我好像没遇到过。

  7. yardr

    下载没有速度,下载文件夹已经修改好,是不是防火墙的原因?我只放行了这个软件的Web端口。

    1. Rat's
      @yardr

      只需要开启Web端口就行了,你修改的下载文件夹存在不。

  8. c4

    大佬,不知道为什么用不了啊,排查了好几遍了也没有找到原因。
    用aria下载后是可以上传的,可以排除onedrive客户端的原因。
    用人人客户端下载好后,下载目录出现了下载的文件和mask文件夹,过了一会儿消失应该是被删除掉了,网页客户端里已下载记录也删除了。可是就是无法上传。那个/temp文件里是始终没有文件存在的。
    真心搞不懂问题出在哪里。

    1. Rat's
      @c4

      配置确定没问题话,先下载一个文件,运行python3 /root/upod/check.py,然后贴上你的SSH客户端输出日志。

      1. c4
        @Rat's

        真的很奇怪,我手动上传就可以,但是加到cron里就上传不上去
        20181207182356生活大爆炸.The.Big.Bang.Theory.S12E10.中英字幕.HDTVrip.720P-人人影视.mp420181207182356
        20181207182356生活大爆炸.The.Big.Bang.Theory.S12E10.中英字幕.HDTVrip.720P-人人影视.mp4
        97.60% | TIME:126s | REMAIN TIME:3s | [243793920/249787162] bytes.
        Successfully uploaded '20181207182356生活大爆炸.The.Big.Bang.Theory.S12E10.中英字幕.HDTVrip.720P-人人影视.mp4' as '20181207182356生活大爆炸.The.Big.Bang.Theory.S12E10.中英字幕.HDTVrip.720P-人人影视.mp4'
        task finish
        我是直接crontab -e,最后一行加的"/1 * python3 /root/upod/check.py"
        也重启cron服务了

        1. c4
          @c4

          刚才没事又看了下执行日志,显示mv操作没有权限,我就在脚本最前边加上了sudo su就好了,实在是小白,不知道是不是我个人的问题,给后边遇到这个问题的小伙伴们提个醒。

          1. rhotov
            @c4

            我之前也有这个问题,多谢解答哈

          2. Rat's
            @c4

            可能是我在人人Systemctl配置文件里使用root运行,导致操作下载的文件也需要root权限吧。

  9. rhotov

    好像中文名字的视频会有点问题,但是不知道里面哪个字符有问题,之前试过另一个中文名字的视频就可以上传
    root@rhotov:~/upod# python3 /root/upod/check.py
    Legal V~前律师·小鸟游翔子~.Legal.V.Moto.Bengoshi.Takanashi.Shoko.Ep07.Chi_Jap.HDTVrip.1280X720-ZhuixinFan.mp4
    Legal V~前律师·小鸟游翔子~.Legal.V.Moto.Bengoshi.Takanashi.Shoko.Ep07.Chi_Jap.HDTVrip.1280X720-ZhuixinFan.mp4
    mv: cannot stat ‘/download/Legal V~前律师·小鸟游翔子~.Legal.V.Moto.Bengoshi.Takanashi.Shoko.Ep07.Chi_Jap.HDTVrip.1280X720-ZhuixinFan.mp4’: No such file or directory

    同一目录下的英文名字的视频也能正常上传

    1. Rat's
      @rhotov

      我开始以为是符号问题,然后我转义试了下,再然后发现是程序问题,日志导出是正确的名称,但下载完成后,文件里的空格被转换成了+,所以你的文件名称变成了Legal+V~,导致报错No such file or directory。

      1. rhotov
        @Rat's

        明白了,多谢,看来文件名里有空格的暂时没法上传了

        1. Rat's
          @rhotov

          人人客户端目前BUG是有点,只能等他们慢慢修复了。

  10. leoliu

    armbian能用不

    1. Rat's
      @leoliu

      这个不清楚,得你自己尝试下才行。

  11. 冰飞

    不会吃DMCA么,要不要正向代理到抗DMCA的服务器上?如果要,怎么代理?

    1. Rat's
      @冰飞

      这个好像是加密传输,应该查不到。

      1. 冰飞
        @Rat's

        为什么我回复一直提示我不合规则……
        原Po说下载方式类似P2P,不知道会不会有问题

        1. Rat's
          @冰飞

          对,就是类似加密p2p传输,问题的话,暂未发现。

  12. rhotov

    另外想给后来的网友提个醒,如果你的VPS每月流量不是很多,那么务必在设置里关掉上传(无法完全关掉,可以限速1kb),这个客户端在没有下载任何文件的时候也会全速上传,即使用脚本删掉了下载的文件,上传速度那里也是有速度的,很神奇。

    1. Rat's
      @rhotov

      这个好像会共享点带宽出去,具体多少自己可以设置。

  13. rhotov

    现在又有一个新问题,我下载了一个文件A并且上传到OD上了,这时候脚本是会自动删掉VPS里的A这个文件以及人人网页版里面的下载记录,但是如果我重新在人人上下载这个A,那么这个任务就会直接被放进已完成的分类下,而此时VPS上并没有这个文件A。如何解决这个问题呢……

    1. Rat's
      @rhotov

      这个问题没遇到是,没试过重复下载,不过我感觉这客户端还是有点bug的。

  14. 小庵

    之前在运行“python3 /root/upod/check.py”命令后,服务器回复我
    File "/root/upod/check.py", line 5

    port=“3001” ^

    SyntaxError: invalid character in identifier

    一开始以为说端口不对,后来发现复制博主的代码修改时,不知道为什么“port=”3001“”这里面的双引号变成中文状态下的双引号了,刚刚突然发现修改成英文状态下的双引号,如果有人也遇到类似情况,可以照此修改。

    1. 小庵
      @小庵

      想知道如何修改能让自动上传脚本上传文件在one drive的指定目录下啊?
      刚去看是上传在根目录下新建文件夹的。d

      1. Rat's
        @小庵

        这个上传的目录是有命名规定的,你可以编辑/usr/local/etc/OneDrive/onedrive.cfg配置文件,修改export api_root_folder参数,root是根目录,如果上传到文档目录,就改成export api_root_folder="special/documents",特殊文件夹名称参考这个https://docs.microsoft.com/zh-cn/onedrive/developer/rest-api/api/drive_get_specialfolder。

  15. 幸运

    感谢大佬,在debian下安装和运行上传脚本成功,终于不用每次都命令行上传和删除文件了,小服务器福音

    1. Rat's
      @幸运

      手动删除是挺麻烦的。

  16. 哈哈骑士

    牛逼,大佬你怎么这么吊

  17. rhotov

    另外onedrive网页端本身是可以在线观看的

    1. Rat's
      @rhotov

      那样多麻烦,直接用列表程序好些。

  18. rhotov

    试了一下,Debian 8 x64可以运行,不过有个小问题,经常出现:人人网页端显示速度为0,vps下载目录里已经出现了占位文件但是没有mark目录,并且这时check.py也不会上传

    1. Rat's
      @rhotov

      这个貌似只有下载完成后才会产生那个日志文件,然后再根据这个日志文件判断上传。

  19. 蓝爵薇

    厉害厉害,我要试试~~~~

  20. tt

    大大大佬,debian不能用吗吗吗吗吗吗

    1. Rat's
      @tt

      客户端只给了CentOS系统的,不过好像有人Debian可以运行,明天有空我试试。

      1. 幸运
        @Rat's

        给大佬端茶,我是debianx,用这个客户端一段时间啦,没啥问题暂时。

      2. kbrx93
        @Rat's

        支持一波