[python]很是小的下載圖片腳本(非通用)

說在最前面:這不是一個十分通用的下載圖片腳本,只是根據個人一個小問題,爲了減小個人重複性工做寫的腳本。html

問題

  • 原由:個人這篇博文什麼是真正的程序員瀏覽量超過了4000+。python

  • 問題來了:裏面的圖片我都是用的七牛的圖牀,我使用的是免費用戶,每月只有1G的下載流量,今天我收到一封郵件,告訴我我欠費了,欠費了幾毛錢。我看了下使用概況,原來是流量超了,一個多G。光我博文發佈的那天居然有近1G的下載流量。。。。
    程序員

  • 爲何這麼作:由於個人文章都是在atom編輯器中,用markdown寫的。因此圖片都是以‘參考式’的形式插入,url都是七牛生成的。以下圖:

    發佈文章的時候直接全文拷貝到博客園後臺,直接就能夠發佈顯示,不須要再上傳圖片到博客園上。markdown

  • 解決辦法:看來爲了之後不被莫名其妙的扣費(貌似七牛沒有使用量預警,只有月末結算)。我打算把全部的圖片上傳到博客園。我本地沒有這些圖片的備份,七牛網頁上也沒找到批量下載的功能。一共19張圖片,我又不想一個個下載。因此就寫了個腳本。編輯器

腳本

#!/usr/bin/env python
# -*- coding:utf-8 -*-
#
#   Author  :   XueWeiHan
#   E-mail  :   595666367@qq.com
#   Date    :   16/3/9 下午4:16
#   Desc    :   下載圖片腳本

import requests

PATH = '/Users/xxx/Downloads/img'   #保存圖片的路徑

# 圖片的url(url我已經換成博客園的了,只留了兩個)
URLS = [
'[pic1]: http://images2015.cnblogs.com/blog/759200/201603/759200-20160309165053600-1959617063.png "迴旋鏢"',
'[pic2]: http://images2015.cnblogs.com/blog/759200/201603/759200-20160309165138632-1466995563.png "即興表演"',
]


class Img(object):
    def __init__(self, url):
        self.file_name = url.split('/')[-1]
        self.url = url
        self.path = PATH+'/'+self.file_name

    @property
    def data(self):
        r = requests.get(self.url)
        return r.content

    def save(self):
        with open(self.path, 'wb') as fb:
            fb.write(self.data)

for i, url in enumerate(URLS):
    url = url.split(' ')[1]
    Img(url).save()
    print u'第{}/共{}:{}'.format(i+1, len(URLS), 'sucess')

下載完成:
atom

事情沒有那麼簡單

腳本很快就寫好了,秒下載完!可是,我們的__博客園__不支持批量上傳。T_T(若是有知道的小夥伴,請告訴無知的我)。url

完結

話說,寫這篇博客花費的時間是這些操做中最長的~看來我又賣萌了。。。。逃spa

本文分享 CNBlog - 削微寒的程序員之路。
若有侵權,請聯繫 support@oschina.cn 刪除。
本文參與「OSC源創計劃」,歡迎正在閱讀的你也加入,一塊兒分享。.net

相關文章
相關標籤/搜索