Pythonにて、フォルダー内のファイルのプロパティを取得したいです。
osモジュールを使った方法では「アクセス日時」「作成日時」「更新日時」を取得する方法しかわかりませんでした。いくら検索しても出てきません。
取得したいのは「メディアの作成日時」と「撮影日時」というプロパティです。分かる方いらっしゃいますでしょうか?
<追記>
「日付時刻」と「更新日時」は異なるものです。
タイムスタンプではなく「プロパティの詳細」を取得したいです。
> 取得したいのは「日付時刻」というプロパティです
何の日時のことでしょうか?
> ファイルの上にある、「ファイル名」「更新日時」「種類」「サイズ」といった部分です。
> 取得したいのは「日付時刻」というプロパティです
上記が表示されるosは何でしょうか?
それが表示されてるスクショ画像を質問に掲載してくれたら、分かりやすいです
アクセス日付、作成日時、更新日時、これらすべて「日付時刻=日時」データですよ。
> 「種類」
種類とは?
> osモジュールを使った方法では「アクセス日時」「作成日時」「更新日時」を取得する方法しかわかりませんでした。
その分かった方法とは何ですか?
そのコードを質問に追記してください。
OS は Linux ですか、Windows ですか、それとも他の OS ですか?
osモジュールの stat メソッドならファイルのサイズや種類(通常ファイルか、ディレクトリ(フォルダ)か、その他か)も分かるんですが。
動画や画像のメタデータを取得したいのでしょうか?
画像ファイル (.jpg) であれば、Exif で分かりそうな気もします。
Python からは PIL (Pillow) でできるようです。
OS は Windows ですか?
Windows でしたら、シェル (Explorer) の機能でできそうな気がします。
.NET のサンプルを見た記憶がありますが、そのまま Python に通用するかどうか分からないです。
> 「プロパティの詳細」を取得したいです。
プロパティの詳細とは?具体的に書かないと他人には伝わりません。
> タイムスタンプではなく「プロパティの詳細」を取得したいです。
の意味がよく分かりませんが、
> 取得したいのは「メディアの作成日時」と「撮影日時」というプロパティです。
が、osで表示できるjpegファイルの「撮影日時」と同じ「日時」を取得したい、という意味だとして、以下書きます
勘違いしてたら、スルーしてください
from PIL import Image
im = Image.open('jpegファイルのパス')
creation_time = im._getexif()[36867]
または
from PIL import Image
im = Image.open('jpegファイルのパス')
creation_time = im.getexif().get(306)
を実行したら、「creation_time」に「撮影日時」と同じ「日時」が格納されると思います
参考
https://tagsqa.com/detail/28511
https://qiita.com/mo256man/items/b4567b0e0945b99f9cff
https://www.lifewithpython.com/2014/12/python-extract-exif-data-like-data-from-images.html
私の一つ前のコメントと同様に、
> 取得したいのは「メディアの作成日時」と「撮影日時」というプロパティです。
が、osで表示できる動画ファイルの「メディアの作成日時」と同じ「日時」を取得したい、という意味だとして、以下書きます
勘違いしてたら、スルーしてください
パソコンで「ffmpegコマンド」が使用可能ならば、
import subprocess
import re
fmpeg_path = 'ffmpegコマンドのパス'
movie_path = '動画ファイルのパス'
ret = subprocess.run([ffmpeg_path, '-i', movie_path], capture_output=True, encoding='utf8')
for line in ret.stderr.splitlines():
# ここからインデント有り
m = re.match(r'\s*creation_time\s*:\s*(\S+)Z', line)
if m != None:
# ここからインデント増
creation_time = m.group(1)
を実行したら、「creation_time」に「メディアの作成日時」と同じ「日時」が格納されると思います
参考
https://udon.little-pear.net/ffmpeg-fix-gopro-creation-time/

回答2件
あなたの回答
tips
プレビュー