パーソナルブログメモリ

a = [1, 1]
for _ in "*" * 999: a += [sum(a[-2:])]
print(a)

写真を年月で分けるプログラム

2019-01-09 | python入門(すぐさまマスター)
ubuntu 18.04のとあるフォルダに1500枚ぐらいの画像と動画が入っていて、
これは使いづらいと年月で分けるプログラムを作ってみました。


動画はこんな名前
VID_20190101_114246.3gp
画像はこんな名前
IMG_20190108_163045.jpg

最初作ってみると201903という未来のフォルダが作成されて
IMG_20190108_201903.jpg
こんな奇跡のような時間に撮影されていたので後ろ8文字をみないように修正
2017,2018,2019がベタ打ちなのはそこからの写真しかないため

ubuntu用です。
該当フォルダにプログラムを置いてpython3で実行です。
フォルダ作成とファイル移動しかしていませんが、もしもの時の責任は負えませんので、自己責任でお願いします。

プログラムの説明
(1)最初にファイル名一覧を取得
(2)201701〜201912まで一月ずつ該当する日付の入っているファイルを探し、存在している年月のフォルダを作成(すでにフォルダがある場合はpassする)
(3)201701〜201912まで一月ずつ該当する日付の入っているファイルを探し、その月のフォルダに移動


import os
import shutil

path = "./"
files = os.listdir(path)
print(len(files))
#該当する年月のフォルダを作る
for y in [str(i) for i in [2017,2018,2019] ]:
    for m in [("0"+str(i))[-2:] for i in range(1,13)]:
        sw=0
        for f in files:
            if f[:-8].find(y+m)>-1:sw=1
        if sw==1:
            try:
                os.mkdir("./"+y+m)
            except:
                pass
#該当する年月のフォルダに移動する
for y in [str(i) for i in [2017,2018,2019] ]:
    for m in [("0"+str(i))[-2:] for i in range(1,13)]:
        for f in files:
            if f[:-8].find(y+m)>-1:
                shutil.move("./"+f, './'+y+m)


最新の画像もっと見る

コメントを投稿

ブログ作成者から承認されるまでコメントは反映されません。