Exemple #1
0
def upload_bpcs(upload_dir, upload_file, del_file):
    access_token = "access"  # 从百度云获取
    disk = BaiduPan(access_token)
    bpcs_dir = '/apps/bpcs_uploader/'
    if not disk.meta(bpcs_dir + upload_dir):
        disk.mkdir(bpcs_dir + upload_dir)
    # 查看使用情况
    # print disk.quota()
    disk.upload(upload_file,
                path=bpcs_dir + upload_dir + upload_file,
                ondup='overwrite')  # 上传文件,如果存在,直接覆盖
    if disk.meta(bpcs_dir + upload_dir + del_file):  # 删除历史文件
        disk.rm(bpcs_dir + upload_dir + del_file)
Exemple #2
0
#texinfo_show_urls = 'footnote'

# If true, do not generate a @detailmenu in the "Top" node's menu.
#texinfo_no_detailmenu = False

########NEW FILE########
__FILENAME__ = example
#!/usr/bin/env python
#coding=utf-8

import json
from baidupan.baidupan import BaiduPan

if __name__ == '__main__':
    access_token = ''
    disk = BaiduPan(access_token)
    #quota
    print disk.quota()
    #upload
    print disk.upload('hello', path='/apps/appname/hello.txt')
    #merge
    '''
    def merge(self, path, param, **kw):
        self.urlpath = 'file'
        self.method = 'createsuperfile'
        self._method = 'POST'
        return self._request(path=path, param=param, **kw)
    '''
    param = ''
    print disk.merge('/apps/appname/hello.txt', param=param)
    #download
 def test_private_request(self, mock_get, mock_post):
     # Disable the earlier patch on _request to properly test it.
     self.request_patcher.stop()
     baidupan = BaiduPan()
     baidupan.base_url = 'base_url'
     baidupan.urlpath = 'urlpath'
     baidupan.method = 'method'
     baidupan.access_token = 'access_token'
     baidupan._method = "GET"
     mock_get.return_value.content = 'hulahoop'
     result = baidupan._request(headers='headers',
                                file='file1',
                                filename='file1',
                                from_path='from_path',
                                content_length='content_length',
                                content_md5='content_md5',
                                slice_md5='slice_md5',
                                content_crc32='content_crc32')
     self.assertTrue(
         mock_get.call_args,
         call('base_urlurlpath',
              headers='headers',
              params={
                  'slice-md5': 'slice_md5',
                  'content-length': 'content_length',
                  'from': 'from_path',
                  'access_token': 'access_token',
                  'filename': 'file1',
                  'content-crc32': 'content_crc32',
                  'content-md5': 'content_md5',
                  'method': 'method'
              }))
     self.assertEqual(result, 'hulahoop')
     mock_post.return_value.content = 'hulahoop'
     baidupan._method = "POST"
     result_post = baidupan._request(headers='headers',
                                     file='file1',
                                     filename='file1',
                                     from_path='from_path',
                                     content_length='content_length',
                                     content_md5='content_md5',
                                     slice_md5='slice_md5',
                                     content_crc32='content_crc32')
     self.assertEqual(
         mock_post.call_args,
         call('base_urlurlpath',
              files={'files': ('file1', 'file1')},
              headers='headers',
              params={
                  'slice-md5': 'slice_md5',
                  'content-length': 'content_length',
                  'from': 'from_path',
                  'access_token': 'access_token',
                  'filename': 'file1',
                  'content-crc32': 'content_crc32',
                  'content-md5': 'content_md5',
                  'method': 'method'
              }))
     self.assertEqual(result_post, 'hulahoop')
     baidupan.payload = 'payload'
     baidupan.files = None
     mock_post.reset_mock()
     result_payload = baidupan._request(headers='headers')
     self.assertEqual(
         mock_post.call_args,
         call('base_urlurlpath',
              data='payload',
              headers='headers',
              params={
                  'slice-md5': 'slice_md5',
                  'content-length': 'content_length',
                  'from': 'from_path',
                  'access_token': 'access_token',
                  'filename': 'file1',
                  'content-crc32': 'content_crc32',
                  'content-md5': 'content_md5',
                  'method': 'method'
              }))
     self.assertEqual(result_payload, 'hulahoop')
     baidupan._method = 'not allowed'
     with self.assertRaises(Exception):
         baidupan._request(headers="headers")
     self.request_patcher.start()
Exemple #4
0
 def __init__(self, *args, **kw):
     Fuse.__init__(self, *args, **kw)
     self.disk = BaiduPan(Baidufuseconf.baidu_token)
 def setUp(self):
     self.baidupan = BaiduPan()
     self.request_patcher = patch("baidupan.baidupan.BaiduPan._request")
     self.mock_request = self.request_patcher.start()