{ "info": { "author": "Phodal.Gmszone", "author_email": "gmszone@gmail.com", "bugtrack_url": null, "classifiers": [], "description": "osscmd lets you create/delete/list bucket and upload/download/copy/delete file from/to\n Aliyun OSS (Open Storage Service).\n\nThe package would not be update .\n===============================\n\nOSSCMS\u4f7f\u7528\u65b9\u6cd5\u5982READMD\uff0c\u5b89\u88c5\u65b9\u6cd5\u5982\u4e0b:\n==================================\n\teasy_install alioss\n\t\n\u7528\u6cd5\u548cali\u7684\u8bf4\u660e\u6587\u6863\u4e00\u81f4\uff0c\u4f46\u662f\u53ef\u76f4\u63a5\u8c03\u7528OSSCMD\uff0c\u65b9\u6cd5\u7c7b\u4f3c\u4e8edjango-admin.py\nwindows\u4e0b\u76f4\u63a5\u8fd0\u884c\n\tosscmd.py\n\n\u539f\u6587README\u5982\u4e0b\n===============================\n\n\n\u963f\u91cc\u4e91\u5f00\u653e\u5b58\u50a8\u670d\u52a1 Open Storage Service (OSS) Python SDK\u8bf4\u660e\u6587\u6863\n===============================================================\n\n\u963f\u91cc\u4e91\u5f00\u653e\u5b58\u50a8\u670d\u52a1\u5b98\u65b9\u7f51\u7ad9:\n http://oss.aliyun.com\n\n\u963f\u91cc\u4e91\u5f00\u653e\u5b58\u50a8 \n===============================================================\n\u5b58\u50a8\u5728OSS\u91cc\u7684\u6587\u4ef6\u53eb\u505a\"object\". \u6240\u6709\u7684object\u90fd\u653e\u5728bucket\u91cc\u9762\u3002\n\n\u7b80\u4ecb\n===============================================================\n\u8fd9\u7bc7\u6587\u6863\u4e3b\u8981\u4ecb\u7ecd\u5982\u4f55\u4f7f\u7528Python\u6765\u8fdb\u884cOSS API\u8c03\u7528\uff0c\u5e76\u4e14\u4ecb\u7ecdosscmd\n\u7684\u7b80\u5355\u4f7f\u7528\u3002\n\u8fd9\u7bc7\u6587\u6863\u5047\u8bbe\u4f60\u5df2\u7ecf\u719f\u6089Python\uff0c\u719f\u6089OSS\u7684\u76f8\u5173\u6982\u5ff5\uff0c\u5e76\u4e14\u5df2\u7ecf\u6ce8\u518c\u4e86\n\u963f\u91cc\u4e91\u7684OSS\u670d\u52a1\uff0c\u4e14\u83b7\u5f97\u4e86\u76f8\u5e94\u7684ID\u548cKEY\u3002\n\u5982\u679c\u4f60\u8fd8\u6ca1\u6709\u5f00\u901a\u6216\u8005\u8fd8\u4e0d\u4e86\u89e3OSS\uff0c\u8bf7\u79fb\u6b65OSS\u5b98\u65b9\u7f51\u7ad9\u3002\n\n\u73af\u5883\u8981\u6c42\n===============================================================\nPython SDK\u9700\u8981\uff1a\u5b89\u88c5python 2.5\uff08\u5305\u62ec\uff09\u4ee5\u4e0a\u4e14\u57283.0\uff08\u4e0d\u5305\u62ec\uff09\u4ee5\u4e0b\n\u7684\u7248\u672c\u3002\n\u53ef\u4ee5\u5728Windows\u5e73\u53f0\u548cLinux\u5e73\u53f0\u4f7f\u7528\u3002\n\n\u5982\u4f55\u83b7\u53d6\n===============================================================\n1. \u6253\u5f00\u6d4f\u89c8\u5668\uff0c\u8f93\u5165oss.aliyun.com\n2. \u627e\u5230Python SDK\u94fe\u63a5\uff1a\n3. \u4e0b\u8f7d\u540e\u53ef\u4ee5\u5f97\u5230\u7c7b\u4f3cOSS_Python_API_xxxxxxxx.tar.gz\u7684\u5305\n4. \u8fdb\u5165\u538b\u7f29\u5305\u6240\u5728\u7684\u76ee\u5f55\uff0c\u8fdb\u884c\u89e3\u538b\u7f29\n5. \u89e3\u538b\u7f29\u540e\u5f97\u5230\uff0coss\u6587\u4ef6\u5939\u548cosscmd\u6587\u4ef6\n \n\u4f7f\u7528\u8bf4\u660e\n===============================================================\n\u4f7f\u7528oss_api.py \n===============================================================\n1. \u521b\u5efabucket\n def put_bucket(self, bucket, acl='', headers=None):\n \u7b49\u540ccreate_bucket\u51fd\u6570\n def create_bucket(self, bucket, acl='', headers=None):\n \u53c2\u6570\u8bf4\u660e\uff1a\n bucket\uff0c\u7c7b\u578b\uff1astring\n acl\uff0c\u7c7b\u578b\uff1astring\uff0c\u76ee\u524d\u4e3aprivate\uff0cpublic-read\uff0c \n public-read-write\u4e2d\u7684\u4e00\u79cd\n headers\uff0c \u7c7b\u578b\uff1adict\uff0c\u9ed8\u8ba4\u4e3a\u7a7a\n \u8fd4\u56de\u503c\u8bf4\u660e\uff1a\n HTTP Response \n \u53c2\u89c1http://docs.python.org/2/library/httplib.html\n def put_bucket_with_location(self, bucket, acl='', location='', headers=None):\n \u53c2\u6570\u8bf4\u660e\uff1a\n bucket\uff0c\u7c7b\u578b\uff1astring\n acl\uff0c\u7c7b\u578b\uff1astring\n location\uff0c \u7c7b\u578b\uff1astring\n headers\uff0c \u7c7b\u578b\uff1adict\n \u8fd4\u56de\u503c\u8bf4\u660e\uff1a\n HTTP Response\n2. \u5220\u9664bucket\n def delete_bucket(self, bucket, headers=None):\n \u53c2\u6570\u8bf4\u660e\uff1a\n bucket\uff0c\u7c7b\u578b\uff1astring\n headers\uff0c \u7c7b\u578b\uff1adict\n \u8fd4\u56de\u503c\u8bf4\u660e\uff1a\n HTTP Response\n3. \u4fee\u6539bucket\u8bbf\u95ee\u6743\u9650\n def put_bucket(self, bucket, acl='', headers=None):\n def create_bucket(self, bucket, acl='', headers=None):\n \u540c1\u4e2d\u7684put_bucket\u548ccreate_bucket\n4. \u83b7\u53d6bucket\u8bbf\u95ee\u6743\u9650\n def get_bucket_acl(self, bucket):\n \u53c2\u6570\u8bf4\u660e\uff1a\n bucket\uff0c\u7c7b\u578b\uff1astring\n \u8fd4\u56de\u503c\u8bf4\u660e\uff1a\n HTTP Response\n5. \u663e\u793a\u521b\u5efa\u7684bucket\n def get_service(self, headers=None):\n \u53c2\u6570\u8bf4\u660e\uff1a\n headers\uff0c \u7c7b\u578b\uff1adict\n \u8fd4\u56de\u503c\u8bf4\u660e\uff1a\n HTTP Response\n def list_all_my_buckets(self, headers=None):\n \u53c2\u6570\u8bf4\u660e\uff1a\n headers\uff0c \u7c7b\u578b\uff1adict\n \u8fd4\u56de\u503c\u8bf4\u660e\uff1a\n HTTP Response\n6. \u4e0a\u4f20object\n def put_object_from_string(self, bucket, object, input_content, content_type=DefaultContentType, headers=None, params=None):\n \u53c2\u6570\u8bf4\u660e\uff1a \n bucket\uff0c\u7c7b\u578b\uff1astring\n object\uff0c\u7c7b\u578b\uff1astring\n input_content\uff0c\u7c7b\u578b\uff1astring\n content_type\uff0c\u7c7b\u578b\uff1astring\n headers\uff0c\u7c7b\u578b\uff1adict\n params\uff0c\u7c7b\u578b\uff1adict\n \u8fd4\u56de\u503c\u8bf4\u660e\uff1a\n HTTP Response\n def put_object_from_file(self, bucket, object, filename, content_type='', headers=None, params=None):\n \u53c2\u6570\u8bf4\u660e\uff1a \n bucket\uff0c\u7c7b\u578b\uff1astring\n object\uff0c\u7c7b\u578b\uff1astring\n filename\uff0c\u7c7b\u578b\uff1astring\uff0c\u672c\u5730\u9700\u8981\u4e0a\u4f20\u7684\u6587\u4ef6\u540d\n content_type\uff0c\u7c7b\u578b\uff1astring\uff0cobject\u7684\u7c7b\u578b\n headers\uff0c\u7c7b\u578b\uff1adict\n params\uff0c\u7c7b\u578b\uff1adict\n \u8fd4\u56de\u503c\u8bf4\u660e\uff1a\n HTTP Response\n7. \u663e\u793a\u4e0a\u4f20\u7684object\n def get_bucket(self, bucket, prefix='', marker='', delimiter='', maxkeys='', headers=None):\n \u540clist_bucket \n def list_bucket(self, bucket, prefix='', marker='', delimiter='', maxkeys='', headers=None):\n \u53c2\u6570\u8bf4\u660e\uff1a \n bucket\uff0c\u7c7b\u578b\uff1astring\n prefix\uff0c\u7c7b\u578b\uff1astring\n marker\uff0c\u7c7b\u578b\uff1astring\n delimiter\uff0c\u7c7b\u578b\uff1astring\n maxkeys\uff0c\u7c7b\u578b\uff1astring\n headers\uff0c\u7c7b\u578b\uff1adict\n \u8fd4\u56de\u503c\u8bf4\u660e\uff1a\n HTTP Response\n8. \u5220\u9664object\n def delete_object(self, bucket, object, headers=None):\n \u53c2\u6570\u8bf4\u660e\uff1a \n bucket\uff0c\u7c7b\u578b\uff1astring\n object\uff0c\u7c7b\u578b\uff1astring\n headers\uff0c\u7c7b\u578b\uff1adict\n \u8fd4\u56de\u503c\u8bf4\u660e\uff1a\n HTTP Response\n9. \u4e0b\u8f7dobject\n def get_object_to_file(self, bucket, object, filename, headers=None):\n \u53c2\u6570\u8bf4\u660e\uff1a \n bucket\uff0c\u7c7b\u578b\uff1astring\n object\uff0c\u7c7b\u578b\uff1astring\n filename\uff0c\u7c7b\u578b\uff1astring\uff0c\n \u5c06object\u5185\u5bb9\u4e0b\u8f7d\u5230\u672c\u5730\u6587\u4ef6\u7684\u6587\u4ef6\u540d\n headers\uff0c\u7c7b\u578b\uff1adict\n \u8fd4\u56de\u503c\u8bf4\u660e\uff1a\n HTTP Response\n10. \u4f7f\u7528\u793a\u4f8b\uff1a\n\u5728\u89e3\u538b\u7684oss\u76ee\u5f55\u4e0b\uff0c\u521b\u5efa\u4e00\u4e2a\u6d4b\u8bd5\u6587\u4ef6test.py\u5185\u5bb9\u5982\u4e0b\uff0c\n\u5e76\u5c06ACCESS_ID\u548cSECRET_ACCESS_KEY\u7684\u5185\u5bb9\u586b\u5199\u6b63\u786e\uff0c\n\u5e76\u4e14\u5c06BUCKET\u586b\u5199\u4e00\u4e2a\u552f\u4e00\u7684\u540d\u5b57\u3002\n\n#!/usr/bin/env python\n#coding=utf8\nimport time\nfrom oss_api import *\nfrom oss_xml_handler import *\nHOST=\"oss.aliyuncs.com\"\nACCESS_ID = \"\"\nSECRET_ACCESS_KEY = \"\"\n#ACCESS_ID and SECRET_ACCESS_KEY \u9ed8\u8ba4\u662f\u7a7a\uff0c\n#\u8bf7\u586b\u5165\u60a8\u7533\u8bf7\u7684\u6b63\u786e\u7684ID\u548cKEY.\nBUCKET = \"\"\n#bucket \u9ed8\u8ba4\u662f\u7a7a\uff0c\u8bf7\u586b\u5165\u552f\u4e00\u7684bucket\u540d\u79f0\n#\u4f8b\u5982test-bucket-20130101\u7b49\u5e26\u552f\u4e00\u65e5\u671f\u7684bucket\u540d\u5b57.\n\ndef check_not_empty(input, msg=\"\"):\n if not input:\n print \"Please make sure %s not empty!\" % msg \n exit(-1)\ndef check_res(res, msg=\"\"):\n if res.status / 100 == 2:\n print \"%s OK\" % msg\n else:\n print \"%s FAIL\" % msg\n print \"ret:%s\" % res.status\n print \"request-id:%s\" % res.getheader(\"x-oss-request-id\")\n print \"reason:%s\" % res.read()\n exit(-1)\n \nif __name__ == \"__main__\": \n #\u521d\u59cb\u5316\n check_not_empty(ACCESS_ID, \"ACCESS_ID\")\n check_not_empty(SECRET_ACCESS_KEY, \"SECRET_ACCESS_KEY\")\n oss = OssAPI(HOST, ACCESS_ID, SECRET_ACCESS_KEY)\n #\u521b\u5efa\u5c5e\u4e8e\u81ea\u5df1\u7684bucket\n bucket = BUCKET \n check_not_empty(bucket, \"bucket\")\n acl = 'private'\n headers = {}\n res = oss.put_bucket(bucket, acl, headers)\n check_res(res, \"create bucket\")\n\n #\u5217\u51fa\u521b\u5efa\u7684bucket\n res = oss.get_service()\n check_res(res, \"list all buckets\")\n #\u628a\u6307\u5b9a\u7684\u5b57\u7b26\u4e32\u5185\u5bb9\u4e0a\u4f20\u5230bucket\u4e2d,\u5728bucket\u4e2d\u7684\u6587\u4ef6\u540d\u53ebobject\u3002\n object = \"object_test\"\n input_content = \"hello, OSS\"\n content_type = \"text/HTML\"\n headers = {}\n res = oss.put_object_from_string(bucket, object, input_content, content_type, headers)\n check_res(res, \"upload from string\")\n #\u6307\u5b9a\u6587\u4ef6\u540d, \u628a\u8fd9\u4e2a\u6587\u4ef6\u4e0a\u4f20\u5230bucket\u4e2d,\u5728bucket\u4e2d\u7684\u6587\u4ef6\u540d\u53ebobject\u3002\n object = \"object_test\"\n filename = __file__ \n content_type = \"text/HTML\"\n headers = {}\n res = oss.put_object_from_file(bucket, object, filename, content_type, headers)\n check_res(res, \"upload from localfile\")\n #\u4e0b\u8f7dbucket\u4e2d\u7684object\uff0c\u5185\u5bb9\u5728body\u4e2d\n object = \"object_test\"\n headers = {}\n res = oss.get_object(bucket, object, headers)\n check_res(res, \"download object\")\n #\u4e0b\u8f7dbucket\u4e2d\u7684object\uff0c\u628a\u5185\u5bb9\u5199\u5165\u5230\u672c\u5730\u6587\u4ef6\u4e2d\n object = \"object_test\"\n headers = {}\n filename = \"get_object_test_file\"\n res = oss.get_object_to_file(bucket, object, filename, headers)\n if os.path.isfile(filename):\n os.remove(filename)\n check_res(res, \"download object to localfile\") \n #\u67e5\u770bbucket\u4e2d\u6240\u62e5\u6709\u7684\u6743\u9650\n res = oss.get_bucket_acl(bucket)\n check_res(res, \"get bucket acl\")\n #\u5217\u51fabucket\u4e2d\u6240\u62e5\u6709\u7684object\n prefix = \"\"\n marker = \"\"\n delimiter = \"/\"\n maxkeys = \"100\"\n headers = {}\n res = oss.get_bucket(bucket, prefix, marker, delimiter, maxkeys, headers) \n check_res(res, \"list objects in bucket\")\n #\u5220\u9664bucket\u4e2d\u7684object\n object = \"object_test\"\n headers = {}\n res = oss.delete_object(bucket, object, headers)\n check_res(res, \"delete object\")\n #\u5220\u9664bucket\n res = oss.delete_bucket(bucket)\n check_res(res, \"delete bucket\")\n\n11. \u793a\u4f8b\u7684\u9884\u671f\u7ed3\u679c\uff1a\n create bucket OK\n list all buckets OK\n upload from string OK\n upload from localfile OK\n download object OK\n download object to localfile OK\n get bucket acl OK\n list objects in bucket OK\n delete object OK\n delete bucket OK\n\n\u4f7f\u7528osscmd\n===============================================================\n1. \u5728Linux\u4e0a\u5b89\u88c5 osscmd.\n sudo rm -r /usr/local/oss\n sudo mkdir -p /usr/local/oss\n sudo tar -zxf oss.tar.gz -C /usr/local/oss\n sudo rm -f /usr/bin/osscmd\n sudo ln -s /usr/local/oss/osscmd /usr/bin/osscmd\n sudo chmod 755 /usr/local/oss/osscmd\n\n \u5728Windows\u4e0a\u5b89\u88c5osscmd\n \u89e3\u538b\u7f29\u5305\n \n2. \u8fd0\u884c\"python osscmd config --id=YOUR_ID --key=YOUR_KEY\" \n \u7528\u6765\u914d\u7f6e\u8bbf\u95eeOSS\u6240\u9700\u8981\u7684\u8ba4\u8bc1\u7801\n \n\n3. \u8fd0\u884c\"python osscmd getallbucket\" \u5217\u51fa\u521b\u5efa\u7684bucket.\n \u5982\u679c\u662f\u521a\u521a\u4f7f\u7528OSS\u7684\u7528\u6237\u56e0\u4e3a\u6ca1\u6709\u521b\u5efabucket\uff0c\u8f93\u51fa\u662f\u7a7a\n\n4. \u8fd0\u884c\"python osscmd createbucket mybucket\" \u521b\u5efa\u4e00\u4e2a\u540d\u5b57\n \u53ebmybucket\u7684bucket\uff0c\u6709\u53ef\u80fd\u4e0d\u6210\u529f\uff0c\u8fd9\u4e2a\u65f6\u5019\u9700\u8981\u6362\u4e00\u4e2a\u540d\u5b57\u3002\n \u56e0\u4e3aOSS\u4e2d\u7684bucket\u540d\u5b57\u662f\u5168\u5c40\u552f\u4e00\u7684\u3002\n\n5. \u53ef\u4ee5\u518d\u6b21\u8fd0\u884c\"python osscmd getallbucket\" \u67e5\u770b\u662f\u5426\u521b\u5efa\u6210\u529f\u3002\n \u5982\u679c\u6ca1\u6709\u6210\u529f\u8bf7\u68c0\u67e5osscmd\u8fd4\u56de\u7684\u9519\u8bef\u4fe1\u606f\u3002\n\n6. \u6210\u529f\u521b\u5efabucket\u540e\u3002\u8fd0\u884c\"python osscmd list oss://mybucket/\",\n \u67e5\u770bbucket\u4e2d\u6709\u54ea\u4e9bobject\u3002\n \u7531\u4e8ebucket\u4e2d\u8fd8\u6ca1\u6709\n object\uff0c\u8f93\u51fa\u662f\u7a7a\u7684\u3002\n\n7. \u5411bucket\u4e2d\u4e0a\u4f20\u4e00\u4e2aobject.\n $ md5sum my_local_file\n 7625e1adc3a4b129763d580ca0a78e44 my_local_file\n\n $ python osscmd put my_local_file oss://mybucket/myobject\n\n8. \u5982\u679c\u521b\u5efa\u6210\u529f\uff0c\u518d\u6b21\u8fd0\u884c\"python osscmd list oss://mybucket/\" \n\n9. \u4ecebucket\u4e2d\u4e0b\u8f7dobject\u5230\u672c\u5730\u6587\u4ef6\uff0c\u5e76\u6bd4\u5bf9\u4e0b\u8f7d\u7684\u6587\u4ef6\u7684md5\u503c\n $ python osscmd get oss://mybucket/myobject local_file\n\n $ md5sum local_file\n 7625e1adc3a4b129763d580ca0a78e44 local_file\n\n10. \u5220\u9664bucket\u4e2d\u7684object \n $ python osscmd delete oss://mybucket/myobject\n\n11. \u5220\u9664bucket, \u6ce8\u610f\uff0c\u5982\u679cbucket\u4e2d\u6709object\u6216\u8005parts\n \u5219\u8fd9\u4e2abucket\u4e0d\u80fd\u88ab\u5220\u9664\n $ python osscmd deletebucket test-oss-aliyun-com\n\nChangeHistory\n===============================================================\n0.3.2 - 2013-10-20\n* \u4fee\u590dosscmd\u7684uploadfromdir\u547d\u4ee4\u4e2d\uff0c\u5728\u4e2d\u6587\u76ee\u5f55\u4e0b\uff0c\u4e0a\u4f20\u7684object\u540d\u5b57\u88ab\u622a\u65ad\u7684\u95ee\u9898\u3002\n* \u4fee\u590doss_util.py\u4e2dDEBUG\u88ab\u8bbe\u7f6e\u6210True\u7684\u60c5\u51b5\u4e0b\u65e0\u6cd5\u6253\u5370log\u7684\u95ee\u9898\u3002\n* oss_api.py\u4e2d\u589e\u52a0\u4e86\u8bbe\u7f6e\u6bcf\u6b21\u4e0a\u4f20\u548c\u4e0b\u8f7d\u5927\u5c0f\u7684\u63a5\u53e3\u3002\n* osscmd\u589e\u52a0\u4e86--debug=true\u6765\u6253\u5370\u65e5\u5fd7\u3002\n* oss_api.py\u4e2d\u589e\u52a0\u4e86\u4e0a\u4f20\u5931\u8d25\u65f6\u5019\u7684\u91cd\u8bd5\uff0c\u6700\u5927\u91cd\u8bd5100\u6b21\u3002\n\n0.3.1 - 2013-08-02\n* \u652f\u6301\u8df3\u8f6c\u3002\n* \u7ed9oss_api.py\u90e8\u5206\u51fd\u6570\u589e\u52a0\u8bf4\u660e\u3002\n\n0.1.3 - 2013-07-12\n* \u652f\u6301multipart\u76f8\u5173\u64cd\u4f5c\uff0cosscmd\u589e\u52a0multipart\u76f8\u5173\u7684\u63a5\u53e3\u3002\n osscmd\u652f\u6301\u672c\u5730\u76ee\u5f55\u4e0a\u4f20\u3002\n osscmd\u652f\u6301\u5c06bucket\u7684\u67d0\u4e00\u4e2aprefix\u7684object\u4e0b\u8f7d\u5230\u672c\u5730\u7684\u76ee\u5f55\u3002\n\n0.1.0 - 2011-11-15\n* \u7b2c\u4e00\u6b21\u64cd\u4f5c\u652f\u6301\u57fa\u672c\u7684\u521b\u5efa\uff0c\u5220\u9664\u548c\u663e\u793abucket\u3002\n \u652f\u6301\u521b\u5efa\uff0c\u5220\u9664\u548c\u663e\u793aobject\u3002", "description_content_type": null, "docs_url": null, "download_url": "UNKNOWN", "downloads": { "last_day": -1, "last_month": -1, "last_week": -1 }, "home_page": "http://www.phodal.com", "keywords": null, "license": "GPL version 2", "maintainer": null, "maintainer_email": null, "name": "alioss", "package_url": "https://pypi.org/project/alioss/", "platform": "UNKNOWN", "project_url": "https://pypi.org/project/alioss/", "project_urls": { "Download": "UNKNOWN", "Homepage": "http://www.phodal.com" }, "release_url": "https://pypi.org/project/alioss/0.22.4/", "requires_dist": null, "requires_python": null, "summary": "Command line tool for managing Aliyun Open Storage Service.", "version": "0.22.4" }, "last_serial": 915286, "releases": { "0.11": [ { "comment_text": "", "digests": { "md5": "151466dc651dcfee210e5bfbcf8f114a", "sha256": "ed97053efb63aa326671b41885bf029d97d9f6490361444f7a031f006d542406" }, "downloads": -1, "filename": "alioss-0.11-py2.6.egg", "has_sig": false, "md5_digest": "151466dc651dcfee210e5bfbcf8f114a", "packagetype": "bdist_egg", "python_version": "2.6", "requires_python": null, "size": 43017, "upload_time": "2012-06-23T09:31:57", "url": "https://files.pythonhosted.org/packages/a4/8a/e3e51d161d6ca86f7b020a533ad4be6005b6a6b2ce533d1c66c866385bd5/alioss-0.11-py2.6.egg" } ], "0.20": [ { "comment_text": "", "digests": { "md5": "13c6371095eae23a50573f63ac9b323e", "sha256": "30da08ca102a3118162e7e05ebe2535c134a90f1ff2dbf5e5615db0c4c007c60" }, "downloads": -1, "filename": "alioss-0.20-py2.7.egg", "has_sig": false, "md5_digest": "13c6371095eae23a50573f63ac9b323e", "packagetype": "bdist_egg", "python_version": "2.7", "requires_python": null, "size": 51379, "upload_time": "2013-11-09T15:31:02", "url": "https://files.pythonhosted.org/packages/3b/08/bbb25e0b580eedf9be95a726bffa887ab1b9db87c552bb17e62a9aa97cfd/alioss-0.20-py2.7.egg" }, { "comment_text": "", "digests": { "md5": "060b561589a9ae7fd081d0784f589036", "sha256": "c8f6dbe9c1415eb62bb1c53c77a33c3723850fc0eb0d5a0dbabcd506dcce32c1" }, "downloads": -1, "filename": "alioss-0.20.zip", "has_sig": false, "md5_digest": "060b561589a9ae7fd081d0784f589036", "packagetype": "sdist", "python_version": "source", "requires_python": null, "size": 25790, "upload_time": "2013-11-09T15:30:01", "url": "https://files.pythonhosted.org/packages/bb/04/e0acda96940299026d0807a1f92668e1b84f4e49380987527dadcfedfd5b/alioss-0.20.zip" } ], "0.21": [ { "comment_text": "", "digests": { "md5": "267c5f22d096f901f247a0ec0f9ea6be", "sha256": "d95a246d4d92ed814de3a515041f510e6832e1368edadce882b70377ee770943" }, "downloads": -1, "filename": "alioss-0.21-py2.7.egg", "has_sig": false, "md5_digest": "267c5f22d096f901f247a0ec0f9ea6be", "packagetype": "bdist_egg", "python_version": "2.7", "requires_python": null, "size": 51636, "upload_time": "2013-11-09T16:00:19", "url": "https://files.pythonhosted.org/packages/ba/d4/3deb2950ad185b3b9b89b319f91e1d217143d9a28ec3aaf35ff0c307e886/alioss-0.21-py2.7.egg" }, { "comment_text": "", "digests": { "md5": "359cdf9d22693415e4847210a883a741", "sha256": "8e7bac86fcc11e910d7c5df130f0512126b3892daf03abe564d2059c12a8a854" }, "downloads": -1, "filename": "alioss-0.21.zip", "has_sig": false, "md5_digest": "359cdf9d22693415e4847210a883a741", "packagetype": "sdist", "python_version": "source", "requires_python": null, "size": 26138, "upload_time": "2013-11-09T16:00:51", "url": "https://files.pythonhosted.org/packages/2c/0d/357dbfd1702640bef04b6b0675f018bac1c18884caef58851ee97082a6a4/alioss-0.21.zip" } ], "0.22": [ { "comment_text": "", "digests": { "md5": "59b96a6a974c1d690f83441c44286db6", "sha256": "a1f6af5e2f2b603edcb4031488d86c6374b9fcdc4cb19ae9ba12536291235e64" }, "downloads": -1, "filename": "alioss-0.22-py2.7.egg", "has_sig": false, "md5_digest": "59b96a6a974c1d690f83441c44286db6", "packagetype": "bdist_egg", "python_version": "2.7", "requires_python": null, "size": 77029, "upload_time": "2013-11-09T16:04:10", "url": "https://files.pythonhosted.org/packages/4a/4e/ced02545905bd84fb265f0219c7ec7ccd1ee6d9a2bdf2be2942c5c594e72/alioss-0.22-py2.7.egg" }, { "comment_text": "", "digests": { "md5": "8c5d616af0cca57bf57f6b16504fe66c", "sha256": "61c6f1828dca04c3b5e06bc735575210da5c981aeda416904fa57480c0f96434" }, "downloads": -1, "filename": "alioss-0.22.zip", "has_sig": false, "md5_digest": "8c5d616af0cca57bf57f6b16504fe66c", "packagetype": "sdist", "python_version": "source", "requires_python": null, "size": 35466, "upload_time": "2013-11-09T16:04:23", "url": "https://files.pythonhosted.org/packages/f4/dd/17c93d67466e81b72fbfa16aae99a70d518346766fe09d39a4882fd70139/alioss-0.22.zip" } ], "0.22.1": [ { "comment_text": "", "digests": { "md5": "5d214c9e61e7a7d4e493c1b89f7a089e", "sha256": "11d9ccf721dfc338845d4bf4cd3a8342812ccdf746dc3cd1f1dff1e86040fc85" }, "downloads": -1, "filename": "alioss-0.22.1-py2.7.egg", "has_sig": false, "md5_digest": "5d214c9e61e7a7d4e493c1b89f7a089e", "packagetype": "bdist_egg", "python_version": "2.7", "requires_python": null, "size": 86277, "upload_time": "2013-11-09T16:09:07", "url": "https://files.pythonhosted.org/packages/7e/87/ecb53f7ee6ad794d791b4f70b064c71f5563eb98befe0af6de8e3a4c48bc/alioss-0.22.1-py2.7.egg" }, { "comment_text": "", "digests": { "md5": "d14626d68605da6e17e1899f6c09ee26", "sha256": "78b556dcc68fc612dfa03a8011223f3f031ff8b0dc7582ebded0a7d76dfd8ee2" }, "downloads": -1, "filename": "alioss-0.22.1.zip", "has_sig": false, "md5_digest": "d14626d68605da6e17e1899f6c09ee26", "packagetype": "sdist", "python_version": "source", "requires_python": null, "size": 35310, "upload_time": "2013-11-09T16:09:15", "url": "https://files.pythonhosted.org/packages/34/46/40880434381bc3b7ca4b43dda3b3dedb984ea165717a5599b52113d6d98a/alioss-0.22.1.zip" } ], "0.22.2": [ { "comment_text": "", "digests": { "md5": "8a0cf73f2ed8d4633306d9b656504292", "sha256": "0e96a1eb11c4c9fc7365bff21011c6a14c7f121c4997e79db5220701b1f0e467" }, "downloads": -1, "filename": "alioss-0.22.2.zip", "has_sig": false, "md5_digest": "8a0cf73f2ed8d4633306d9b656504292", "packagetype": "sdist", "python_version": "source", "requires_python": null, "size": 46249, "upload_time": "2013-11-09T16:12:18", "url": "https://files.pythonhosted.org/packages/08/71/b85a65818e50bba0c1cd96c76ee3ba6d262bfb428f8d2ee804c372ea5f1c/alioss-0.22.2.zip" } ], "0.22.3": [ { "comment_text": "", "digests": { "md5": "b1d030afc1ec6e7e6e4d9ef379a54b22", "sha256": "20190c93fe70746076a439d01d4f9123e8952950396a7e21799db51338c53a54" }, "downloads": -1, "filename": "alioss-0.22.3-py2.7.egg", "has_sig": false, "md5_digest": "b1d030afc1ec6e7e6e4d9ef379a54b22", "packagetype": "bdist_egg", "python_version": "2.7", "requires_python": null, "size": 97154, "upload_time": "2013-11-09T16:13:07", "url": "https://files.pythonhosted.org/packages/52/fd/afb497b1b5beff9458c0dcfbf77a19a452abae0a4336d19902915d55f870/alioss-0.22.3-py2.7.egg" }, { "comment_text": "", "digests": { "md5": "1b71e06e20929eac2c1c94410a90a4de", "sha256": "16647e37d005a890d6f051541ef791265de0d15403b624e793085956482cee13" }, "downloads": -1, "filename": "alioss-0.22.3.zip", "has_sig": false, "md5_digest": "1b71e06e20929eac2c1c94410a90a4de", "packagetype": "sdist", "python_version": "source", "requires_python": null, "size": 46249, "upload_time": "2013-11-09T16:12:55", "url": "https://files.pythonhosted.org/packages/82/4f/cda56365910dcc161193b335edf6e9b0d8a4bfd69f8228b7388f8147ade0/alioss-0.22.3.zip" } ], "0.22.4": [ { "comment_text": "", "digests": { "md5": "55b6fda0cae6e70179290a73c7306e2c", "sha256": "d35c228b99ea2fbe2b00082d110f6f9f6f20a50d30dc2e9b607f3ed789eb07a6" }, "downloads": -1, "filename": "alioss-0.22.4-py2.7.egg", "has_sig": false, "md5_digest": "55b6fda0cae6e70179290a73c7306e2c", "packagetype": "bdist_egg", "python_version": "2.7", "requires_python": null, "size": 97570, "upload_time": "2013-11-09T16:18:39", "url": "https://files.pythonhosted.org/packages/7a/32/085ee4d5eb432962a7d0693020f0ae6e10675d3736afd0b2560ad1f5be48/alioss-0.22.4-py2.7.egg" }, { "comment_text": "", "digests": { "md5": "fb33be2d129665fb9c5ea9fd315a1612", "sha256": "d189ef5d4ca0074fdeb38cbd1f4b5b76decfdcbddc6d120df318e4b2fc1a0c19" }, "downloads": -1, "filename": "alioss-0.22.4.zip", "has_sig": false, "md5_digest": "fb33be2d129665fb9c5ea9fd315a1612", "packagetype": "sdist", "python_version": "source", "requires_python": null, "size": 46673, "upload_time": "2013-11-09T16:18:45", "url": "https://files.pythonhosted.org/packages/ac/95/9f7fb9bb0e1dd097f6b62290b6baf8ba9b3b5331ac4824f8cac0ff5eab6a/alioss-0.22.4.zip" } ] }, "urls": [ { "comment_text": "", "digests": { "md5": "55b6fda0cae6e70179290a73c7306e2c", "sha256": "d35c228b99ea2fbe2b00082d110f6f9f6f20a50d30dc2e9b607f3ed789eb07a6" }, "downloads": -1, "filename": "alioss-0.22.4-py2.7.egg", "has_sig": false, "md5_digest": "55b6fda0cae6e70179290a73c7306e2c", "packagetype": "bdist_egg", "python_version": "2.7", "requires_python": null, "size": 97570, "upload_time": "2013-11-09T16:18:39", "url": "https://files.pythonhosted.org/packages/7a/32/085ee4d5eb432962a7d0693020f0ae6e10675d3736afd0b2560ad1f5be48/alioss-0.22.4-py2.7.egg" }, { "comment_text": "", "digests": { "md5": "fb33be2d129665fb9c5ea9fd315a1612", "sha256": "d189ef5d4ca0074fdeb38cbd1f4b5b76decfdcbddc6d120df318e4b2fc1a0c19" }, "downloads": -1, "filename": "alioss-0.22.4.zip", "has_sig": false, "md5_digest": "fb33be2d129665fb9c5ea9fd315a1612", "packagetype": "sdist", "python_version": "source", "requires_python": null, "size": 46673, "upload_time": "2013-11-09T16:18:45", "url": "https://files.pythonhosted.org/packages/ac/95/9f7fb9bb0e1dd097f6b62290b6baf8ba9b3b5331ac4824f8cac0ff5eab6a/alioss-0.22.4.zip" } ] }