因为写博客的关系需要很多图片

而且markdown下插入图片如果想上传过来非常麻烦

所以我每次都是用这个图床, 但是每次都要从浏览器打开并且把图片一个个拽上去然后复制粘贴, 非常麻烦, 所以勤劳的我(雾)做一个自动上传图片到图床并且返回图片url的小贡献… 谢谢大家

代码如下


import requests
import sys
import os
import os.path

if (len(sys.argv[1])>3):

    url = 'https://sm.ms/api/upload';

    path = '/users/xuguodong/desktop/figure/';
    files = {'smfile' : open(path+sys.argv[1], 'rb')};

    r = requests.post(url, files = files);

    data1 = eval(r.text.encode('utf-8'));

    url1 = data1['data']['url'];
    print url1

else:
    dir = '/users/xuguodong/desktop/figure'
    l = os.listdir(dir)
    l.sort(key = lambda fn: os.path.getmtime(dir+'/'+fn) if not os.path.isdir(dir+'/'+fn) else 0)
    l.reverse()
    url = 'https://sm.ms/api/upload';

    path = '/users/xuguodong/desktop/figure/';
    url1 = []
    for i in range(int(sys.argv[1])):
        files = {'smfile' : open(path+l[i], 'rb')};

        r = requests.post(url, files = files);

        data1 = eval(r.text.encode('utf-8'));

        url1.append(data1['data']['url']);
    for i in url1:
        print i

有两个功能

直接输入图片名字则直接返回其对应的url

输入数字比如3 则返回最近截图的3个图片并返回

效果如图

这张截图就是秒上传的 哈

..感觉可以无限循环下去了(感觉可以用这个水字数了(大雾) )

撤退..