これまでの講座で作成したAIレポートを、今回はPDF形式で自動生成し、ファイルとして保存・送付するところまで拡張してみましょう!
報告書やプレゼン資料の自動化に最適で、業務の時短や作業効率アップに直結します。
📦 必要なライブラリ
pip install fpdf openai
🔧 コード全体
from fpdf import FPDF
import openai
import datetime
# APIキーの設定
openai.api_key = "sk-あなたのAPIキー"
# AIに生成させるレポート内容
prompt = "4月の売上と商品傾向について要約レポートを作成してください(300文字程度)"
response = openai.ChatCompletion.create(
model="gpt-3.5-turbo",
messages=[{"role": "user", "content": prompt}]
)
report = response["choices"][0]["message"]["content"]
print("✅ AIレポート作成完了")
# PDFに出力
pdf = FPDF()
pdf.add_page()
pdf.set_font("Arial", size=12)
pdf.multi_cell(0, 10, txt="【AIレポート】\n" + report)
# 保存先のファイル名
filename = f"ai_report_{datetime.date.today()}.pdf"
pdf.output(filename)
print(f"✅ PDF保存完了: {filename}")
📨 応用:メール送付やSlack投稿も
- 前回(Day20)のSlack投稿コードと組み合わせれば、PDFを添付して送信できます
- メールで送る場合は
smtplib
を使用して添付送信
📌 注意点
- フォント指定(日本語を含む場合は
fpdf2 + 日本語フォント
推奨) - ファイル名が重複しないように日付で管理
- 大量PDF生成時はストレージ・命名管理に注意
✅ まとめ
- AIで生成したテキストを即時PDFに出力できる
- 報告書のテンプレ化で毎月の定型業務が自動化
- Slackやメール連携で完全無人化も可能に
▶️ 次回予告
Day22では、PDFレポートにグラフや表を追加し、
視覚的にわかりやすい資料をPythonで自動生成する方法をご紹介します。
コメント