|
本帖最后由 akira724 于 2019-7-12 23:08 编辑
手头上有个闲置的玩客云,闲置原因很简单,暗地里疯狂上传和狂跑硬盘(新移动硬盘跑了一个月,阵阵发抖!!)。半个月前收了一个小钢炮N1,发现这货下载BT、磁力速度非常慢(原谅我PT和BT搞不清楚)。我决定要将这两者优点结合起来。
实现功能:U盘插玩客云(20~30元 32G)进行下载。 N1刷armbian 插移动硬盘,用编程(armbian 自带python3)实现将玩客云下载好的小电影移动到N1移动硬盘上。
使用前提:1、同一局域网 2、N1已刷armbian (桌面版更容易操作,适合新手) 3、玩客云插入U盘设置好smb共享
本人是小白,用最笨的方法实现功能
1、设置文字编码, 解决中文、日文乱码问题
armbian-config
#本地语言环境下
zh_CN.UTF-8
ja_JP.UTF-8
2、N1挂载移动硬盘
#移动硬盘插入N1
sudo fdisk -l | grep NTFS #查看移动硬盘有没有检测到
#以如下输出为例:
#/dev/sda1* 1 244 1955776+ 7 HPFS/NTFS #/dev/sda1 就是移动硬盘的路径
sudo mkdir /mnt/xxx #创建挂载文件夹
sudo chmod 777 /mnt/xxx #给予权限
mount -t ntfs-3g /dev/sda1 /mnt/xxx #挂载移动硬盘到上面建好的文件夹
可选:如果插入移动硬盘自动挂载了并不是自己想在的文件夹,可以先卸载
fuser -m -v /dev/sda1 #查看一下哪个用户哪个进程占用着此设备 ;
umount /media/xxxx #卸载
3、N1挂载玩客云SMB u盘
sudo apt-get install cifs-utils #安装相应组件
sudo mkdir /mnt/xxx #创建挂载文件夹
sudo chmod 777 /mnt/xxx #给予权限
#临时挂载,重新开机就消失
mount -t cifs //玩客云IP地址/xxxx/onecloud /mnt/xxx -o username=用户名,password=密码,iocharset=utf8 #这个命令尤其重要iocharset=utf8,不然就算设置好文字编码挂载后也会乱码
#开机自动挂载,重启生效
vi /etc/fstab #编辑开机挂载文件
#按i进入编辑模式,在下面添加
//玩客云IP地址/xxxx/onecloud /mnt/xxx cifs username=用户名,password=密码,iocharset=utf8 0 0 #开机自动挂载SMB
#按esc退出编辑模式, 输入冒号:w ,保存, 输入冒号:q 退出
提示:如何事前知道玩客云完整的地址?
在桌面环境下,文件系统下的网络,输入\\玩客云IP。 就会完整显示出来
4、系统自带python3实现检测和移动文件夹(liunx sh脚本应该也可以,但本人不会)
桌面下新建***.py文件,设置可执行脚本权限(或者命令chmod +x ./xxx.py) 将下面代码复制里面
#!/usr/bin/python3
import os
import shutil
npath = r'/mnt/xxx/电影/' #挂载好的N1地址
opath = r'/mnt/xxx/tddownload/' #挂载好的玩客云地址
#dirs = os.listdir(opath)
for root, dirs, files in os.walk(opath):
#print(files)
for name in files :
if os.path.splitext(name)[-1] == '.mp4' or os.path.splitext(name)[-1] == '.avi' or os.path.splitext(name)[-1] == '.mkv' or os.path.splitext(name)[-1] == '.wmv' : #选出指定后缀的文件
path = os.path.join(root,name) #得出完整路径
(filepath, tempfilename) = os.path.split(path) #分离路径和文件名
#print(filepath)
#print(tempfilename)
try :
shutil.move(filepath,npath) #移动文件夹
except :
exit()
执行是否成功
python3 /root/Desktop/***.py
5、加入定时任务,每30分钟自动执行程序
#检查是否安装了crontab
pgrep cron #有进程返回代表已经安装了
#定时任务添加
#运行crontab –e 编写一条定时任务每30分钟执行一次python程序。
crontab -e #打开编辑文件
*/30 * * * * python3 /root/Desktop/***.py #添加任务
查看是否添加成功
crontab -l #列出当前用户定时任务
/etc/init.d/cron restart #重启服务
#代码更新:增加删除缓存文件
#!/usr/bin/python3
#功能,将玩客云的电影移动的NAS里面
import os
import shutil
npath = r'/mnt/all/电影/' #NAS地址
opath = r'/mnt/wky/onecloud/tddownload/' #玩客云地址
tpath = r'/mnt/wky/.onething_data'
t2path = r'/mnt/wky/'
#dirs = os.listdir(opath)
for root, dirs, files in os.walk(opath):
#print(files)
for name in files :
if os.path.splitext(name)[-1] == '.mp4' or os.path.splitext(name)[-1] == '.avi' or os.path.splitext(name)[-1] == '.mkv' or os.path.splitext(name)[-1] == '.wmv' : #
path = os.path.join(root,name) #得出完整路径
(filepath, tempfilename) = os.path.split(path) #分离路径和文件名
print(filepath)
#print(tempfilename)
try :
shutil.move(filepath,npath) #移动文件夹
except :
exit()
if os.path.exists(tpath) == True : #删除缓存文件
shutil.rmtree(tpath,ignore_errors=True)
for root, dirs, files in os.walk(t2path):
#print(files)
for name in files :
if os.path.splitext(name)[-1] == '.REC':
path = os.path.join(root,name) #删除缓存文件
print(path)
try:
os.remove(path)
except :
|
评分
-
参与人数 2 | 恩山币 +3 |
收起
理由
|
arg10
| + 2 |
想用玩客云挂硬盘下载,n1访问玩客云smb实现公网远程访问,但是不会弄 |
吃丶嘎嘎
| + 1 |
强大的恩山!(以下重复1万次) |
查看全部评分
|