スマホで撮った写真を共有する方法を考える

アプリなどはいれたくないのでGoogleドライブで共有

このままだと見るのがメンドイので以前使ったflaskでそれっぽいものを作ってみる

写真は同期させてPC上に配置

webサーバから見える位置にシンボリックリンクを張る

とりあえずこれでpython側から認識できた

流れとしては

1、画像ファイルの一覧を収集

os.chdir("./static/images")
glob.glob("./*.jpg")

2、撮影日でソート

sorted(glob.glob("./*.jpg"), key=lambda f: get_exif_of_image(f).get("DateTime"), reverse=True)

当初os.statで更新日を取ってきたが撮影日と一致しないので別途Exifを取得するメソッドget_exif_of_imageを用意

3、日付ごとにまとめて表示

if _date != tdate:
    _date = tdate
    list.append(Markup(r'<br>' + str(_date) + r'<br>'))
s = f.replace('.\\', '/static/images/')
list.append(Markup(r'<a href="' + s + r'" target="_blank">' + f.replace('.\\', '') + '</a>'))

本当はhtml部分をtemplates側で処理したかったんだけど面倒だったので強引にタグごと送り込んだ

あと画像を一覧表示したらサーバが耐えられなかったので画像は個別に開くようにした

できれば日付ごとくらいで一覧表示できるようにしたい