本文使用百度開放雲的PHP SDK實現批量下載百度雲盤的文件,需要的朋友可以參考下。
百度開放雲PhpSDK下載地址:http://developer.baidu.com/wiki/index.php?title=%E5%B8%AE%E5%8A%A9%E6%96%87%E6%A1%A3%E9%A6%96%E9%A1%B5/web%E5%BA%94%E7%9 4%A8%E6%8E%A5%E5%85%A5/SDK 實例代碼: 代碼如下: <?php /** * Author: hankcs * Date : 14-3-29 * Time : 下午10:29 */ ini_set("max_execution_time", 36000); require_once '../bcs.class.php'; require_once '../krumo/class.krumo.php'; $host = 'bcs.duapp.com'; $ak = '你的公鑰'; $sk = '你的私鑰'; $bucket = '要下載的bucket名稱'; $baidu_bcs = new BaiduBCS ( $ak, $sk, $host ); $response = json_decode($baidu_bcs->list_object ( $bucket, array('start' => 0,'limit' => 1024,) )->body); $downloaded_size = 0; while($downloaded_size < $response->object_total) { krumo($response); // 下載它們 foreach($response->object_list as $object) { if(!$object->is_dir) { mk_dir('.'.$object->parent_dir); $result = $baidu_bcs->get_object ( $bucket, $object->object, array ("fileWriteTo" => '.'.$object->object ) ); } } $downloaded_size += count($response->object_list); $response = json_decode($baidu_bcs->list_object ( $bucket, array('start' => $downloaded_size,'limit' => 1024,) )->body); } function mk_dir($dir, $mode = 0755) { if (is_dir($dir) || @mkdir($dir,$mode)) return true; if (!mk_dir(dirname($dir),$mode)) return false; return @mkdir($dir,$mode); }