这次讲解下,百度网盘的api使用方法,一个让我们可以把linux上的文件传到一个强大又免费的空间上。。。

为啥会研究这个?

偶然,一定是偶然。要是想从服务器里面把东西传出来,反正就是把东西搞出来。以前我的方案都是dropbox,但是这东西,速度不咋地,而且很一般的速度。。。具体的应用我就不说了,每个人都有自己的想法,在我看来,他很适合做一个临时的免费的存储空间,速度也很不错的。

这个东西值得用吗?

必须呀。

这是我在linux下的测试报告,上传的速度已经到了5MB左右。。。。

上传文件时的网速的测试!!!

lnmp.py就是我上传的文件,很爽把。。。。 嘿嘿

这个lnmp.py 就是我上传的。。。

首先看看他的使用指南:

基于百度PCS的基本开发流程包括(见下图):

1. 注册百度账号。

2. 登录百度开发者中心,注册成为百度开发者。

【前两个就不说了,自己搞,别问我】

3. 创建应用。

4. 开通PCS API权限。

可以看到咱们创建的应用。

点进去,然后把应用的pcs api 启动下

5. 获取Access_Token。

可以在这调试下

百度给大家提供的api已经是很棒了,尽情的用吧。。。。

http://developer.baidu.com/wiki/index.php?title=docs/pcs/rest/file_data_apis_list

里面已经有大量的说明啦 !!! 典型的rest http的接口。。。

所有的行为操作都要access_token的植入的,不然怎么确定你是不是安全的。。

对于这类的接口,都是大同小异的。。。

都是需要一个临时访问的key。。。。 百度这边叫做access_token !!!

curl -k -L -d "client_id=(key)&response_type=device_code&scope=basic,netdisk" "https://openapi.baidu.com/oauth/2.0/device/code"

curl -k -L -d "grant_type=device_token&code=24539f5e161d056f8f237141a7fd1556&client_id=(key)&client_secret=jrDoGMYof6SPN4WxwYN8PwGg2y9Ecb00" "https://openapi.baidu.com/oauth/2.0/token"

把自己的key替换下就可以了。。。。。

查看容量大小

curl -k -L "https://pcs.baidu.com/rest/2.0/pcs/quota?method=info&access_token=(key)"

上传文件

curl -k -L -F "file=@xia.py" "https://c.pcs.baidu.com/rest/2.0/pcs/file?method=upload&access_token=(key)&path=/apps/netdiskshare/xia.py"

删除文件:

curl -k -L "https://pcs.baidu.com/rest/2.0/pcs/file?method=delete&access_token=\

&path=/apps/netdiskshare/xia.py"

复制文件:

curl -k -L "https://c.pcs.baidu.com/rest/2.0/pcs/file?method=copy&access_token=\

&from=/apps/pcsupload/haiyun.me.tar.gz&to=/apps/pcsupload/www.haiyun.me.tar.gz"

列出目录内文件:

curl -k -L "https://pcs.baidu.com/rest/2.0/pcs/file?method=list&access_token=(key)&path=/apps/netdiskshare/"

下载

curl -k -O "https://d.pcs.baidu.com/rest/2.0/pcs/file?method=download&access_token=(key)&path=/apps/netdiskshare/2.jpg"

百度还提供了好多的语言接口,限于能力,我只看懂了python的。。。

from baidupcs import *

import webbrowser

import hashlib

# 根据自己创建的应用,设置相应的app_key与pcs_dir

app_key = 'app_key'

pcs_dir = 'pcs_dir'

pcs = PCS(app_key)

# webbrowser.open(pcs.access_token_url) # limit grant授权

pcs.authorize('here is access toekn')

# 获取云盘使用情况

info = pcs.quota.info()

print info

print 'quota info: %sM/%sM' % (info.used / 1024 / 1024, info.quota / 1024 / 1024)

# 创建目录

dir_name = 'test'

ret = pcs.file.mkdir(path = '/apps/%s/%s' % (pcs_dir, dir_name))

print 'file.mkdir:', ret

base_dir = '/apps/%s/%s/' % (pcs_dir, dir_name)

# 上传文件

path = 'd:\\test.jpg'

file_data = open(path, 'rb').read()

ret = pcs.file.upload(file = file_data, path = '/apps/%s/%s/test.jpg' % (pcs_dir, dir_name))

print 'file.upload:', ret

# 移动文件(改名)

frm = base_dir + 'test.jpg'

to = base_dir + 'test_to.jpg'

ret = pcs.file.move(_from = frm, to = to)

print ret

官方的一个百度云盘的shell tool工具,貌似是不错,但是不知道为啥用不了,有兴趣的朋友可以试试哈。

http://developer.baidu.com/wiki/index.php?title=docs/cplat/stor/sdk#Shell-Tool

大家可以看看,这边是pdf文档 !!!

http://bcs.duapp.com/cplat-01/bcs%2Fshell-tool%2F%E7%99%BE%E5%BA%A6%E4%BA%91%E5%AD%98%E5%82%A8ShellTool%E7%94%A8%E6%88%B7%E6%89%8B%E5%86%8C_V1.1.pdf

上传的文件要是过大的话,大家可以用多种方法把大文件拆解下来。。。

head -c1610612736 xiaorui | curl -k -L -H "Host: c.pcs.baidu.com" -F "file=@-" "https://58.217.200.16/rest/2.0/pcs/file?method=upload&access_token=&type=tmpfile"

上传后面的

tail -c+1610612736 xiaorui | curl -k -L -H "Host: c.pcs.baidu.com" -F "file=@-" "https://220.181.164.16/rest/2.0/pcs/file?method=upload&access_token=&type=tmpfile"

也可以用dd的方法, dd if=/dev/zero skip=??? bs=1024000 count=1 of=file1

下面的方式实现了分拆文件的重组。。。。无比的好用 !!!

一个小应用:

直连的下载链接

大家有看懂吗? 一个上传的文件直接可以转成下载的url, 有了公有地址的url,可以直接传给小伙伴们,让他们直接下载就行了。

又是一个全力测试~

文件大小在 1.9G 左右.....

页面上的结果~

获取直连的另一种方法

这个下载地址可以让linux主机批量下载吗? 可以的。。。。把这个复制的连接存放到迅雷里面,可以获取下载的地址,你可以把地址分给别的主机下载。。

已经下载好了,大家look look下吧~

好嘞~

总结:

希望别让百度的人看到了哈,因为做it的人,有的是网络资源,可以随时的搞起。。。 不管怎么说,这东西真是个利器。。。

linux 百度云 备份软件下载,百度云存储api实现文件分享及linux下的备份上传相关推荐

  1. linux怎么安装输入法软件下载,百度输入法linux版下载

          百度输入法linux版是一款由百度推出的专用于linux的汉字输入工具,百度输入法linux版功能强悍,为用户提供了拼音与五笔两种中文输入方式,百度输入法linux版软件的拼音输入支持全拼 ...

  2. 百度不收录的原因-百度收录提交软件下载-百度收录技巧大全

    网站收录?网站收录是什么意思?网站怎么快速收录?百度网站收录?百度网站收录工具?0基础小白怎么快速进入实战SEO优化让网站收录以及网站排名. 网站收录简单的理解就是百度认可你的网站,在搜索引擎里面输入 ...

  3. linux照片备份软件,照片视频备份软件下载-照片视频备份云相册安卓版v1.0.1-Linux公社...

    照片视频备份软件是一款可以让用户进行照片备份的软件,这款软件的功能是很强大的.例如:你可以在照片视频备份软件上一键备份照片,不用担心照片的丢失,还能智能的分类,让你可以轻松的找到自己的照片.感兴趣的用 ...

  4. php职教云答案,职教云答案查询软件下载,职教云提前看答案,职教云php作业答案...

    2020-10-21 19:17百蹊新闻网编辑:admin人气: 职教云答案查询软件下载,职教云提前看答案,职教云php作业答案 Readandmatch. 将下面的月份与序数词匹配起来填在括号中.( ...

  5. Android高效率编码-第三方SDK详解系列(二)——Bmob后端云开发,实现登录注册,更改资料,修改密码,邮箱验证,上传,下载,推送消息,缩略图加载等功能

    Android高效率编码-第三方SDK详解系列(二)--Bmob后端云开发,实现登录注册,更改资料,修改密码,邮箱验证,上传,下载,推送消息,缩略图加载等功能 我的本意是第二篇写Mob的shareSD ...

  6. android 免费云测平台,免费移动App自动化云测试软件推荐-Testin(云测)

    每当我们完成一个得意的作品APP之后,肯定会立即去上传或者是推广.但是app测试是一项很重要的工作!估计大都是的app测试只是程序员几个人完成.今天,25学堂跟大家分享一个每一个人都可以参与的app自 ...

  7. 如何在linux系统下使用百度云盘上传下载文件?

    学习目标: 如何在linux系统下使用百度云盘上传下载文件? 环境准备: linux操作系统 python开发运行环境 文件下载: 1.Linux系统安装工具 pip install requests ...

  8. Linux下scp无密码上传 下载 文件 目录的方法

    这篇文章主要介绍了Linux下scp无密码上传 下载 文件 目录的方法,非常不错,具有参考借鉴价值,需要的朋友可以参考下 在Linux下远程备份的时候,需要配置scp的 无密码复制文件.目录.就把这个 ...

  9. linux传输文件无密码,Linux下scp无密码上传 下载 文件 目录

    在Linux下远程备份的时候,需要配置scp的 无密码复制文件.目录.就把这个设置整理如下: 本地服务器:A 远程服务器:B 1.在 A 上运行 :ssh-keygen -t rsa 在/root/. ...

最新文章

  1. 百度搜索效果(页面传来数据地址,由服务器去获取)
  2. cocos2d-x 3.0正式版创建project笔记
  3. VS2010中使用gtest简单案例
  4. 【转】局部变量和全局变量---------------【答不对,你还敢说你精通、熟悉python?】...
  5. mac 没有java_maven在Mac OS X上没有使用Java
  6. 软件测试 之Web项目实战解析(附全套实战项目教程+视频+源码)
  7. java中输出日历_Java:输入年份和月份打印出相应的日历表
  8. eXosip事件总结
  9. Mac Excel 次坐标轴/双坐标轴/柱状图+折线图
  10. 【2018亚太数据中心峰会】黄超:从供到需-中国IDC产业发展的环境分析
  11. Codeforces Beta Round #94 (Div. 1 Only)A. Statues
  12. php生成word并下载
  13. 数独解法Java实现
  14. 安装算量软件快速选择计算图元
  15. caffe 中的损失函数分析
  16. Python 圆的周长和面积计算
  17. 求一元二次方程的根(YZOJ-1048)
  18. Java最新面试题100道,包含答案示例(41-50题)
  19. 高手路过--菜鸟版系统安装==(图文安装教程)+(最新win7+win8系统)+系统工具
  20. bzoj3875 [Ahoi2014Jsoi2014]骑士游戏

热门文章

  1. 暑假集训第四场选拔赛 解题报告
  2. FFmpeg和WebRTC
  3. C++中new int()与new int[]区别
  4. Rtsp之海康设备预览回放url
  5. 人脸方向学习(十七):Face Detection-论文整理-解读
  6. 使用Redis构建简单的社交网站
  7. 2020 kali 切换中文显示_Kali设置中文
  8. 以下不属于计算机综合处理多媒体信息的有,国家开放大学《多媒体应用技术基础》第一-二次形成性考核任务试题...
  9. extract进程 oracle,OracleGoldenGate系列:Extract进程的恢复原理
  10. python 读取元组对的key_Python基本认识基本类型