写真を整理したい (2/n)
昨日の記事 の続き。 おうち NAS にある大量の写真から、キャプチャやコピーとそのオリジナルを探そうとしています。
昨日はファイルぜんぶ列挙してたので、今日は画像ファイルに絞り込んで、その数を数えてみました。 画像ファイルに絞り込むのは、mimetypes というライブラリで確認できそうです。 目標としては動画ファイルのキャプチャもあるんだけど、今日のところは静止画に絞りました。
#!/usr/bin/env python3 import mimetypes from pathlib import Path from typing import Generator def iterfile(path: Path) -> Generator[Path, None, None]: first = "" if path.name == "" else path.name[0] if first == "." or first == "@" or first == "_": return if path.is_file(): yield path if path.is_dir(): for child in path.iterdir(): for item in iterfile(child): yield item count : int = 0 for file in iterfile(Path(".")): filetype = mimetypes.guess_type(file)[0] if filetype and filetype[:6] == "image/": print(file) count += 1 print(count)
うえ半分は昨日のままですね、import が増えてる程度。 した半分でファイル種別を判断しています。
さてこの結果、80888個の静止画ファイルが見つかりました。
キャプチャやコピーとそのオリジナルを探すとなると、
80,887 * 80,886 = 6,542,625,882
って 65億回のマッチングが必要になるので、
マッチング 1 回に 1 秒かかるとして、200年かかりそうです。
まじか。どうしたもんかなあ、これ。