0
0

Delete article

Deleted articles cannot be recovered.

Draft of this article would be also deleted.

Are you sure you want to delete this article?

More than 3 years have passed since last update.

【pythonで自動化!】後編:ファイル操作編

Last updated at Posted at 2020-11-02

始めに

こんにちは、美味しいしです。
この記事は、「私、デスクトップが汚い人とはお付き合いしたくないの」と言われないためにの実装解説記事の2つ目となります。
今回はやや短めかもです。
実装について知りたい方は記事をご覧ください!

ファイル操作部分

ここで用いたのは正規表現とshutilです。

工夫した点1:ファイル名からキャプチャ時間を抽出しよう!

macのスクショって天才なことに、ファイル名にキャプチャ時間が入るんですね!
これのおかげで、exiftoolのようなものをインストールしてくる必要がなくなりました。prefixにはスクショ時に頭につく接頭辞が入っています。詳しくはこちら

path="スクリーンショット 2020-10-22 10.28.04.png"
cvtpath = re.compile(
        prefix + r"[\s\S]*?(\d{4}).(\d\d).(\d\d)[\s\D]*?(\d\d?).(\d\d).(\d\d)")
flag = re.search(cvtpath, path)
if flag is not None and len(flag.groups()) == 6:
    date = flag.groups()
    date = list(map(lambda x: int(x), date))

困った点1:曜日ってどうやってとろう

よくよく考えたら、ある曜日のある時間帯にいるってどう判断しよう

解決方法:datetimeで曜日は取れる。後はUNIX時間っぽいものを作ればOK!

day = dtdt(*date).strftime("%a") # 曜日を取得できる
# print(day)
# > Thu
dateemb = date[3] * 60 + date[4] # これで一つの値になったので比較できる
# print(dateemb)
# 628

困った点2:os.mvがない!

解決方法:osがなければshutilに頼ればいい!

import shutil
shutil.move(oldpath, newdir)

終わりに

読んでいただきありがとうございました。
前回の記事はこちら

0
0
0

Register as a new user and use Qiita more conveniently

  1. You get articles that match your needs
  2. You can efficiently read back useful information
  3. You can use dark theme
What you can do with signing up
0
0

Delete article

Deleted articles cannot be recovered.

Draft of this article would be also deleted.

Are you sure you want to delete this article?