开发者社区> 问答> 正文

写了一个python脚本,可一键同步本地文件夹到OSS

用到了官方python api里的list_bucket put_object_from_file get_object_from_file delete_object函数
from oss.oss_api import *

运行脚本需要python环境
只支持单向同步,即把本地文件夹内的文件传到OSS

第一次运行,会生成一个oss_config.ini,设置都填了的话
再运行,就可以直接用了

具体功能,脚本里面有写注释,也没什么大逻辑就是
代码:


h t tps://github.com/goldfilm/tools/blob/master/aliyun/my_oss_sync.py


展开
收起
gfcheng 2011-11-21 11:52:11 23459 0
8 条回答
写回答
取消 提交回答
  • Re写了一个python脚本,可一键同步本地文件夹到OSS
      File "my_oss_sync.py", line 89
        return ('%.2f' " " lst ) % (bytes/math.pow(1024, i))
                             ^

    python 2.4版本下运行,CentOS 5.4
    2013-07-20 14:36:43
    赞同 展开评论 打赏
  • Re写了一个python脚本可一键同步本地文件夹到OSS
    楼主这个是不是要架web服务器才能用啊?
    2012-06-18 14:06:19
    赞同 展开评论 打赏
  • 回 6楼(irecoffee) 的帖子
    不是搂主的问题,是API处理这边对文件的content-type的支持不够,以前不支持unicode,导致在签名的时候会发生错误。
    UnicodeDecodeError: 'ascii' codec can't decode byte 0xe5 in position 6: ordinal not in range(128)

    我会在API里修复这个错误。
    2011-12-14 19:09:19
    赞同 展开评论 打赏
  • 说两个bug吧!
    1. 需要添加“from oss_xml_handler import *”
    2. 貌似不太支持中文
    2011-12-14 16:13:22
    赞同 展开评论 打赏
  • 删掉那行
    msvcrt可以用来捕捉按键输入,我还没用上

    更新了那个链接
    现在可以生成一个index.html,脚本还多个get_content_type函数

    效果见h t tp://storage.aliyun.com/cgf_test/index.html

    我网页前端超不熟悉,你自己改成喜欢的样子吧
    2011-12-09 22:29:33
    赞同 展开评论 打赏
  • msvcrt看起来没用到,试试把import msvcrt那行删掉?

    楼主能不能加个功能:上传完之后再生成一个index.html文件,包含所有文件的链接,并上传?因为OSS还不支持列一个子目录,有index.html的话,共享给朋友比较方便。

    -------------------------

    回 4楼(gfcheng) 的帖子
    赞!
    2011-12-06 13:46:58
    赞同 展开评论 打赏
  • msvcrt是什么模块,在mac osx下不能用,提示

    Traceback (most recent call last):
      File "sync.py", line 20, in <module>
        import msvcrt
    ImportError: No module named msvcrt
    2011-12-03 18:13:01
    赞同 展开评论 打赏
  • 巨赞!
    2011-11-21 14:14:49
    赞同 展开评论 打赏
滑动查看更多
问答排行榜
最热
最新

相关电子书

更多
OSS运维进阶实战手册 立即下载
《OSS运维基础实战手册》 立即下载
OSS运维基础实战手册 立即下载