プログラミング入門

自動化が失敗したケースとその学び

完全初心者向けにやさしく書いています。私自身が実際に体験した失敗談と、すぐに使える改善策を共有します。


はじめに

Pythonを使った自動化はとても便利です。メール送信、データ集計、グラフ作成など、手作業だと時間がかかる作業を一気に自動化できます。

ただし、私も最初は何度も失敗しました。失敗から学んだことをシンプルにまとめますので、これから挑戦する方の参考になれば嬉しいです。


失敗ケース①:メールが送信されない

状況

やったこと:Pythonを使って社内へ自動メール送信するスクリプトを作成し、本番で実行したがメールが届かない。

原因

社内のメール送信サーバ(SMTP)の認証方式や許可リストが変わっており、スクリプトが認証できていなかった。

学び・対処法

  • 本番実行前に必ずテスト送信(自分宛)を行う。
  • エラーが出たらログ(例:例外メッセージ)を保存して原因を特定する。
テスト送信のサンプルコード

import smtplib
from email.message import EmailMessage

msg = EmailMessage()
msg["Subject"] = "テスト送信"
msg["From"] = "your@company.com"
msg["To"] = "yourself@company.com"
msg.set_content("動作確認のテストです。")

with smtplib.SMTP("smtp.company.local", 587) as s:
    s.starttls()
    s.login("your_user", "your_password")  # 認証方法を確認
    s.send_message(msg)
    print("送信完了(テスト)")


失敗ケース②:pandasによるデータ集計で予期せぬ出力

状況

やったこと:CSVを読み込んで集計したら、合計が明らかにおかしい(数値が結合されているように見える)。

原因

CSV内の数値が文字列(str)として読み込まれていたため、数値計算が正しく行われず予期せぬ結果になっていた。

学び・対処法

  • データ読み込み後に df.dtypes で型を確認する。
  • 必要に応じて pd.to_numeric()astype() で型変換を行う。
  • 集計後は数値の合計や平均を目視でチェックする(極端に大きい/小さい値がないか)。
型チェック&変換サンプル

import pandas as pd

df = pd.read_csv("sales.csv")
print(df.dtypes)  # 型を確認

# 数値として扱いたい列を変換(エラーをNaNにする)
df["売上"] = pd.to_numeric(df["売上"], errors="coerce")

# 集計例
total = df["売上"].sum()
print("売上合計:", total)


失敗ケース③:matplotlibで日本語が表示されない

状況

作成したグラフのラベルやタイトルが「□□□」のように表示され、日本語が読めない。

原因

matplotlibのフォント設定がされていなかったため。

学び・対処法

  • 環境に日本語フォントをインストールする(例:Noto Sans JP等)。
  • matplotlibでフォントを明示的に設定する。
日本語フォントを設定する例

import matplotlib.pyplot as plt
import matplotlib as mpl

# フォントパスを直接指定する方法の例(OSや環境でパスは変わります)
mpl.rcParams['font.family'] = 'Noto Sans JP'  # 事前に環境へインストールしておく

plt.title("勤怠レポート")
plt.plot([1,2,3], [4,5,6])
plt.xlabel("日付")
plt.show()


共通の学び:失敗を減らすためのチェックリスト

  • 本番で動かす前にテスト環境で動作確認(自分宛のメールやサンプルデータで実行)。
  • 入力データの型と欠損値をチェックする(df.dtypes, df.isnull().sum())。
  • 権限や接続先(SMTP、DB、API)の仕様変更がないか確認する。変更履歴があれば要チェック。
  • ログを残す(エラー発生時に何が起きたか追跡できるように)。
  • 一度に全部やらない:小さな処理から順に組み立て、各段階で確認する。

終わりに:失敗は学びのチャンス

自動化は万能ではありません。ですが、失敗を一つ一つ潰していけば、確実に「便利な仕組み」を作れます。

最初は小さな自動化(テスト送信やCSVの簡単集計)から始めて、成功体験を積み重ねていきましょう。失敗はあなたを強くします。ぜひ挑戦してみてください!


参考リンク

ABOUT ME
ショート
文系出身・一般&医療事務歴ありの会社員。 「パソコン苦手…」「残業が当たり前…」そんな日々を変えたくて、40代から独学でPythonやExcelの自動化に挑戦中。 プログラミングもブログも初心者レベルからの出発ですが、“早く帰りたい”一心で効率化を追求しています。 つまずいたリアルな失敗談や、「これならできた!」という事例を通して、パソコンに自信がない人の味方になれるブログを目指しています。