はじめに
こんにちは、piyovateです。
弊社では今月に入ったあたりから、毎日行う朝会の議事録を作成し始めました。
きっかけは、「文字起こしツール」や「生成AI」を議事録作成に活用してみよう!という社内アイデアでした。
しかし、運用を始めてすぐに気づいたことが一つ
ファイル命名、めんどくさい……!(圧倒的怠惰)
エンジニアが単純作業に直面したとき取るべき選択肢……そう、自動化です ^^
ということで今回は、ChatGPTにPythonコードを生成させて、議事録ファイルの命名とNASへの転送を自動化してみました。
📝 背景
社内の朝会で、毎日以下のようなファイルがローカルに生成されます:
- 音声ファイル(
.m4a
) - 音声から文字起こししたMarkdown(
.md
) - 同じくテキスト形式(
.txt
)
それらを次のルールでNASに保存していました:
yyyymmdd_朝会.m4a
yyyymmdd_文字起こし_朝会.md
yyyymmdd_文字起こし_朝会.txt
毎日毎日、朝にファイル名を変更して保存する……
めんどくさすぎる!!!!
🎯 解決したかったこと
- ファイル名を日付付きで自動命名したい
- ファイルをNASに自動転送したい
-
.m4a
ファイルだけはローカルから削除したい(他は残す)
🛠️ 実装:Pythonコード
import os
import shutil
from datetime import datetime
# 🔧 設定
local_dir = "./local_meeting_files" # ローカルファイル保存場所
today_str = datetime.now().strftime("%Y%m%d")
# 転送先ディレクトリ(実際のNASパスは伏せています)
nas_base_dir = r"\\<NASのパス>"
nas_target_dir = os.path.join(nas_base_dir, f"{today_str}_社内打合せ_朝会")
# 📁 拡張子とリネーム形式
file_patterns = {
".m4a": f"{today_str}_朝会.m4a",
".md": f"{today_str}_文字起こし_朝会.md",
".txt": f"{today_str}_文字起こし_朝会.txt",
}
# 📂 NASフォルダがなければ作成
os.makedirs(nas_target_dir, exist_ok=True)
# 🚀 処理開始
for ext, new_name in file_patterns.items():
matched_files = [f for f in os.listdir(local_dir) if f.endswith(ext)]
if not matched_files:
print(f"⚠️ {ext} ファイルが見つかりません")
continue
src_path = os.path.join(local_dir, matched_files[0])
dst_path = os.path.join(nas_target_dir, new_name)
# コピー
shutil.copy2(src_path, dst_path)
print(f"✅ 転送完了: {dst_path}")
# `.m4a` のみ削除
if ext == ".m4a":
os.remove(src_path)
print(f"🗑️ 削除完了: {src_path}")
▶ .bat
で実行できるようにする
以下のような .bat
ファイルを作れば、ダブルクリックだけで実行できます:
@echo off
python auto_meeting_file_transfer.py
pause
💡 補足ポイント
- Pythonがインストールされていればすぐに使えます
- NASにアクセスする際の資格情報は事前に保存しておくとスムーズです(Windows資格情報マネージャーを推奨)
-
.md
や.txt
は、現状では文字起こしツールや生成AIからコピペしています(そのためローカルには残します) - NASパスが日本語フォルダ名を含む場合、一部環境では文字化けや接続エラーが起こることもあるため注意が必要です
🏁 おわりに
ChatGPTを使って小さな自動化に取り組んでみたところ、
日々の作業が少し時短されました。
こうした単純作業は、生成AIにコードを書かせて自動化してみると案外すぐに解決できます!
次は文字起こし→議事録生成までの完全自動化も狙いたい……!
ぜひ、皆さんも試してみてください〜
piyovateでした 🐣