安装json
pear install pecl/json

一、bpcs_uploader下载和使用:

1、下载地址:http://oott123.github.com/bpcs_uploader/

2、系统要求:Linux (or cygwin) with php & curl installed.
3、使用方法:chmod +x bpcs_uploader.php./bpcs_uploader.php

4、由于VPS上安装的php可能存在于各种地方,因此运行很可能不正常。请以使用which php得到你的php绝对路径,修改bpcs_uploader.php的头一句#!后的路径。
5、如果你的php是为了网站环境安装的,那么很有可能你会得到下面这条错误消息:

xxx() has been disabled for security reasons

6、那么说明你的环境由于安全原因禁止了部分函数的执行。请看bpcs_uploader相关问题的1。

7、请使用那条长长的命令代替./bpcs_uploader.php。eg:php -d disable_functions -d safe_mode=Off -f bpcs_uploader.php quota

二、bpcs_uploader初始化

1、敲下命令之后会进入初始化流程

./bpcs_uploader.php init

2、这里分段详述设置方法。

Now start the initiation. If you have configured the uploader , it will be overwirte.

Continue? [y/N] y
3、确认初始化。如果之前有初始化过,那么以前的配置将会被覆盖。

Now you have to enter your baidu PSC app key . You should know that it needs a manual acting.

You can request for it viahttp://developer.baidu.com/dev#/create .

Make sure you have the PCS app key . if you haven\'t , you can use the demo key from Baidu.

It will exprire some time. who knows ? so the best way is to request for your own key.

There are a demo key from Baidu : L6g70tBRRIXLsY0Z3HwKqlRE So if you dont have the app

secret , you have to re-init every month , for the access-token will expires every month.

App KEY [L6g70tBRRIXLsY0Z3HwKqlRE] :

4、第一步,输入App key。这里需要输入一个有PCS权限的API KEY,如果没有的话直接敲回车就好了,这里会默认使用百度提供的一个demo API KEY。

5、不过,由于百度没有公开app secret,所以只能获取一个有效期为一个月的access token。如果有一个有PSC权限的API KEY和secret,那么就能获得一个有效期为10年的refresh token,以便长期使用。

App key has been setted to L6g70tBRRIXLsY0Z3HwKqlRE .

Now you have to enter your baidu PSC app secret. If you dont know the secret , keep it blank.

App SECRET [] :

6、第二步,输入App secret。如果输入了app secret,将会转到device code模式验证;或者直接输入回车使用oob模式验证。先直接回车:

Now you have to enter your app name. You can enter it later in the file [

/root/_bpcs_files_/config/appname ].

Why i have to enter app name ? see FAQs.

If your app name have Chinese characters , please swith your client to the UTF-8 mode.

Here are some chinese characters . Before you enter chinese characters , make sure you can

read these characters.

如果你看到这里,说明你可以直接输入文字了

If you cant read any chinese above , please press enter , and change it manually in the file

[ /root/_bpcs_files_/config/appname ] .

If you have Enter the keyL6g70tBRRIXLsY0Z3HwKqlRE , just press Enter.

App Name [pcstest_oauth] :

8、第三步,这里需要输入app name。详情见FAQ 2。因为是使用的默认的key,所以直接回车即可。

Now you have to get your oauth accesstoken by your own .

Here is a reference document .

http://developer.baidu.com/wiki/index.php?title=docs/pcs/guide/usageexample

A simple guide :

1.visit https://openapi.baidu.com/oauth/2.0/authorize

responsetype=token&clientid=L6g70tBRRIXLsY0Z3HwKqlRE&redirecturi=oob&scope=netdisk

in your broswer.

2.when it redirected to a html page , copy the url to the notepad.

3.get the accesstoken from it , paste it and press Enter.

access_token[] :

9、第四步,获取access token。在浏览器中打开上述URL(https://openapi.baidu.com/oauth/2.0/authorize?response_type=token&client_id=L6g70tBRRIXLsY0Z3HwKqlRE&redirect_uri=oob&scope=netdisk),进行授权。

10、授权完毕后,将会跳到一个写着“百度 Oauth2.0”的页面。复制出其中的网页URL,找到access_token=和&之间的字符串,例如:3.**05c2ea85d52c2***************a5.2592000.136***9032.3089166538-23**47

11、将其复制到shell中粘贴并回车。使用这种方式初始化的用户,需要每月重新初始化。

12、如果第三步输入app secret的时候没有留空,将会得到下面的消息:

Now open your broswer and visithttps://openapi.baidu.com/device .

Copy or input 12abcxyz when it been asks.

After granted the access to the application , be back and press Enter key .

13、来到这里,打开浏览器访问 https://openapi.baidu.com/device ,在“请输入设备上显示的用户授权码:”文本框中输入上面显示的授权码(这里是12abcxyz),并点击继续。 看到网页上显示“请返回设备继续操作!”后,返回ssh上按下回车后,即可继续。

curl -X GET -k -L "...."

% Total % Received % Xferd Average Speed Time Time Time Current

Dload Upload Total Spent Left Speed

0 62 0 62 0 0 40 0 --:--:-- 0:00:01 --:--:-- 235

Success . Your Storage Status : 0.06G/115.00G (0.05%)

Have fun !

14、你所看到的输出可能和这里给出的不一样,但是只要看到了存储空间的剩余量,和【Have fun !】提示,即说明成功初始化。

三、bpcs_uploader基本的操作指令

1、查询容量(配额)

./bpcs_uploader.php quota

2、结果:

Your Storage Status : 0.06G/115.00G (0.05%)

3、上传文件

./bpcs_uploader.php upload [path_local] [path_remote]

4、路径格式:foo/bar/file.ext(路径中一定要包括文件名)

5、上传后,能在百度网盘/我的应用数据/应用名/foo/bar下找到一个叫file.ext的文件。

6、下载文件

./bpcs_uploader.php download [path_local] [path_remote]

7、删除文件

./bpcs_uploader.php delete [path_remote]

8、离线下载

./bpcs_uploader.php fetch [path_remote] [path_to_fetch]

四、bpcs_uploader相关问题
1、各种错误提示,试试:

php -d disable_functions -d safe_mode=Off -f bpcs_uploader.php

2、为什么要输入app name?因为百度PCS的权限被限制在了/apps/appname/下。

3、如果发现输入app name后仍然无法上传文件,请通过网页版找到【我的应用数据】找到对应的文件夹名,写入/config/appname文件。上传文件的时候会自动帮您处理文件夹,无需手动写出完整路径。

4、同一个网盘帐号在不同的vps上用的话要注意,获取的token只要填写到几台VPS上就可以了,不要多次授权。如果授权了第二次的话,貌似前一次的token会失效。

5、脚本内置了一个app key,但是没有给出app secret,所以需要每月更新授权。这个key是百度官方文档中写给开发者做测试用的,但是只公开了key,所以没办法拿到永久授权。

6、干净系统直接安装php和curl的话,可以直接用开头那两行方法来使用的。但是一般的lnmp安装包就需要这样

百度网盘自动上传脚本-bpcs_uploader的更多相关文章

  1. 打造百度网盘备份利器:自动备份Linux VPS文件和多线程下载百度网盘资源

    前一段时间国内的各大网盘百度云盘,金山快盘,360云盘,华为网盘为争夺用户上演空间容量博弈,网盘商们还固执地以为中国的网民都不懂网络技术,可以像某公司那样用一些数字的手段来忽悠用户,参与到网盘商的数字 ...

  2. Linux命令行上传文件到百度网盘

    利用bpcs_uploader你可以自动将VPS主机上的文件上传到百度网盘中,同时也可以从百度网盘中下载文件到VPS主机上,让你的文件安全地"住"在百度云中.[font=Tahom ...

  3. 使用百度网盘实现自动备份VPS

    http://ju.outofmemory.cn/entry/51536 经过轰轰烈烈的一轮网盘大战,百度网盘的容量已经接近无限(比如我的是3000多G ),而且百度网盘已经开放API,所以用来备份V ...

  4. [PHP] 网盘搜索引擎-采集爬取百度网盘分享文件实现网盘搜索

    标题起的太大了,都是骗人的.最近使用PHP实现了简单的网盘搜索程序,并且关联了微信公众平台.用户可以通过公众号输入关键字,公众号会返回相应的网盘下载地址.就是这么一个简单的功能,类似很多的网盘搜索类网 ...

  5. Python教程百度网盘哪里有?

    Python为我们提供了非常完善的基础代码库,覆盖了网络.文件.GUI.数据库.文本等大量内容,被形象地称作"内置电池(batteries included)".带你快速入门的Py ...

  6. aria2 加速百度网盘下载

    准备工作: chrome浏览器: BaiduExporter插件(下载地址:https://github.com/acgotaku/BaiduExporter): aria2工具(下载地址:http: ...

  7. 百度网盘下载器 PanDownload v2.0

    PanDownload是一款坚持以用户体验为中心,畅快淋漓的下载为理念而打造的下载工具. 从2017年2月9日首个版本推出,时至今日已经一年七个月了,首先感谢大家一直以来的支持与建议,促使着我不断地对 ...

  8. IDM下载器使用方法详解:百度网盘下载,视频会员一网打尽!

    一. IDM的设置 [01]IDM插件与各大浏览器的集成 默认情况下,在成功安装IDM后,直接点击这里的选项,会弹出[常规设置],一般情况下直接保持默认的配置即可,如果你使用的是比较小众的浏览器,你可 ...

  9. Mac使用Aria2下载百度网盘,突破下载限速的方法教程

    百度网盘目前可以说是在国内网盘环境中一枝独秀,日常使用触及在所难免,尤其是对于喜欢下载资源的朋友来说,但是一些限制让它的使用越来越难,尤其是下载速度,普通用户的下载往往远低于自己的预期,特别是对于 M ...

随机推荐

  1. hadoop权威指南 chapter1 Meet Hadoop

    Meet Hadoop 1.1 Data!(数据) Most of the data is locked up in the largest web properties (like search e ...

  2. 在mac本上折腾android 开发环境

    众所周知的原因,google的很多网站在国内无法访问,苦逼了一堆天朝程序员,下是在mac本上折腾android 开发环境的过程: 一.先下载android sdk for mac 给二个靠谱的网址: ...

  3. Canvas使用渐变之-径向渐变详解

    创建径向渐变使用 createRadialGrdient(x0,y0,r0,x1,y1,r1)​ 一共​六个参数,分别代表: 起点的圆心坐标(第一个和第二个参数), 起点园的半径(第三个参数), 终点 ...

  4. BZOJ 1711: [Usaco2007 Open]Dingin吃饭( 最大流 )

    将牛拆成两个点 i 和 i' 并连弧 , S 向每种 food 连边 , 每种 drink 向 T 连边 , 每种 food 向喜欢他的 cow 连边 到 i , 每种 drink 从喜欢它的 cow ...

  5. 添加站点图标: 为SAE上的WordPress站点添加自己的Favicon

    由于插件 Jetpack的"添加站点图标"功能有问题, 无法从本地上传ico文件到SAE的Storage. 因此需要手动添加站点图标. Step 1: 制作或下载自己的ico文件, ...

  6. Week15(12月16日):授课综述1

    Part I:提问 =========================== 1.(   )类提供了一个对Entity Framework的抽象,能够进行数据持久化并接受数据. A.Layout    ...

  7. 企业级IM应该帮助员工提高绩效,避免无关的信息干扰

    很多上班族一定熟悉如下的场景: 您早上上班一打开QQ,就弹出一个新闻集成窗口,随便点开看看吧,这一点不要紧,您就被一个又一个的链接带着逛下去了.等回过神来要工作的时候,发现已经在这些八卦新闻上浪费了一 ...

  8. Unity的Cover flow的实现包(2个)

    苹果的mac机上预览图片,有一个所谓的cover flow的效果,这里收集到两个,两个实现效果略有不同. 1.老外的实现 https://github.com/rakkarage/Unity3D-Co ...

  9. 【Tomcat】本地域名访问设置

    原路径:localhost:8080/tidyko 1.去掉8080端口 打开%TOMCAT_HOME%/conf/server.xml 修改里面的 <Connector connectionT ...

  10. 【Web】java date 到 Oracle date 精确到时分秒

    有两种方法: java.util.Date startTime=new Date("2014/01/01 23:00:00"); 1.new Timestamp(startTime ...