前言#
使用memos
呼び出しのアルバムは便利ですが、いくつかの解決できない痛点があります。
- CDN がトラフィックを刷られた後、私はほぼすべての国内 CDN サービスを停止しました。小さな水道サーバーでは大量の画像を同時に読み込むことができず、その遅さは誰が使ってもわかります。
- S3 ストレージは高すぎます。COS がトラフィックを刷られた後(そう、私はこんなに運が悪いです)、私は多くのバックアップを決定し、主に GitHub にアップロードし、Cloudflare + Vercel + GitHub Pages + その他の SaaS を利用しています。これらのサービスの利点は無料であることです。
- テンプレートはネットから取得しました。
Deepseek#
主に AI を使用して主要機能のコードを解決し、使えることが重要です。バグが何かあっても、簡単なウェブページ生成にどんな逆天バグがあっても問題ありません.... でしょう。
主要なコードはPython
です。
機能#
- 私が欲しい機能
- 画像を GitHub リポジトリにアップロードし、Actions をトリガーして自動的に HTML ページを生成する。
- アルバムのサムネイルは圧縮する必要があり、クリックで原画像を表示し、小さな水道の負担を軽減します(そう、私は定期的に git で国内サーバーに引っ張って、どこでもアクセスできることを重視します)。
- 画像名に基づいて自動的にタイトルを生成する。
- 更新
2024.12.29
また新しいテンプレートを見つけました。自分ではまあまあだと思います。
追加しました。
workflow で実行する必要のあるスクリプトを設定しました。
2 つのスクリプトはそれぞれtimes.py
とlens.py
で、2 つのテンプレートに対応しています。
デモアドレス#
lens テンプレート https://photo.asbid.cn
times テンプレート https://photo.sgcd.net
GitHub Pages にデプロイされています。
使用#
プロジェクトテンプレート#
設定#
自分のリポジトリのSettings
で見つけます。
TOKEN
はあなたのGithub token
です。
REPO
はアルバムを生成したいリポジトリ名(例:username/repo
)です。
アップロードルール#
アルバムの内容はphotos
というディレクトリにアップロードします。
photos
のルートディレクトリにある写真のデフォルトタイトルは生活を共有
です。
新しいフォルダを作成し、そのフォルダ名はこのディレクトリ内のすべての画像のタイトルとします。
-
同名の txt ファイルのテキストは説明として最高優先度です。
例:1.jpg
1.txt
の場合、1.txt
のテキストを説明として使用します。 -
ディレクトリ内の
説明.txt
はこのディレクトリ内のすべての画像の説明として第二優先度です。 -
両方がない場合は、写真ファイル名を説明として使用します。
その他の部分#
必要に応じてtemplate
ディレクトリ内の対応するテンプレートのindex.html
ファイルのレイアウトと内容を変更できます。
リポジトリを変更するたびに Action が自動的にトリガーされ、HTML がターゲットリポジトリに生成されます。ターゲットリポジトリはGithub Pages
を使用することも、Vercel にデプロイすることもできます。ここでは詳しく説明しません。