Pythonでできる自動化5選|初心者でも今日から使えるスクリプト集

「Pythonを勉強したけど、実際に何を作ればいいの?」

前回の記事では、Python独学の始め方を5つのステップでお伝えしました。今回は「じゃあ実際にどんなことが自動化できるの?」という疑問にお答えします。

Pythonの最大の魅力のひとつは、面倒な繰り返し作業を自動化できること。この記事では、初心者でもすぐに試せる実用的な自動化スクリプト5選を、コード付きで解説します。


目次

Pythonで自動化できることの全体像

Pythonで自動化できる主な分野は次の通りです。

  • ファイル操作:整理・リネーム・バックアップ
  • Excel / CSV処理:集計・グラフ作成・レポート生成
  • Web操作:スクレイピング・価格チェック・データ収集
  • メール送信:定期通知・自動返信
  • 画像処理:リサイズ・一括変換・透かし追加

この中から、初心者が最初に取り組むのに最適な5つを厳選しました。


自動化①:ファイルを自動で整理する

「デスクトップがファイルだらけ…」という経験はありませんか?Pythonを使えば、拡張子ごとにフォルダを作って自動分類できます。

import os
import shutil

# 整理したいフォルダのパス(例:デスクトップ)
target_folder = "/Users/ユーザー名/Desktop"

# 拡張子とフォルダ名の対応
categories = {
    "画像": [".jpg", ".jpeg", ".png", ".gif"],
    "動画": [".mp4", ".mov", ".avi"],
    "書類": [".pdf", ".docx", ".txt"],
    "表計算": [".xlsx", ".csv"],
}

for filename in os.listdir(target_folder):
    filepath = os.path.join(target_folder, filename)
    if os.path.isfile(filepath):
        ext = os.path.splitext(filename)[1].lower()
        for folder_name, extensions in categories.items():
            if ext in extensions:
                dest = os.path.join(target_folder, folder_name)
                os.makedirs(dest, exist_ok=True)
                shutil.move(filepath, dest)
                print(f"{filename} → {folder_name}/")

このスクリプトを実行するだけで、バラバラだったファイルが種類別に自動整理されます。

必要なライブラリ:標準ライブラリのみ(インストール不要)


自動化②:ExcelをPythonで自動集計する

毎月同じ形式のExcelを手作業で集計している方に、ぜひ試してほしいのがこれです。

import openpyxl

# Excelファイルを開く
wb = openpyxl.load_workbook("売上データ.xlsx")
ws = wb.active

# B列(売上金額)の合計を計算
total = 0
for row in ws.iter_rows(min_row=2, values_only=True):
    if row[1]:  # B列が空でない場合
        total += row[1]

# 合計を書き込む
ws["D1"] = "合計"
ws["D2"] = total

wb.save("売上データ_集計済み.xlsx")
print(f"合計金額: {total:,}円")

必要なライブラリpip install openpyxl

月次レポートの集計がわずか数秒で完了します。データが増えても処理時間はほぼ変わりません。


自動化③:Webの価格を自動チェックする

「欲しい商品が安くなったら買いたい」——そんな要望にも応えられます。

import requests
from bs4 import BeautifulSoup

def check_price(url):
    headers = {"User-Agent": "Mozilla/5.0"}
    response = requests.get(url, headers=headers)
    soup = BeautifulSoup(response.text, "html.parser")

    # ※サイトによってセレクタは異なります
    price_tag = soup.find("span", class_="price")
    if price_tag:
        price = price_tag.text.strip()
        print(f"現在の価格: {price}")
        return price
    return None

# チェックしたいURLを指定
check_price("https://example.com/product/12345")

必要なライブラリpip install requests beautifulsoup4

さらに、価格が一定以下になったらメールで通知する仕組みと組み合わせると、完全自動の価格アラートシステムが完成します。


自動化④:メールを自動送信する

定期的な報告メールや、お礼メールの一括送信もPythonなら簡単です。

import smtplib
from email.mime.text import MIMEText

def send_email(to_address, subject, body):
    # Gmailの設定(アプリパスワードを使用)
    smtp_server = "smtp.gmail.com"
    smtp_port = 587
    from_address = "あなたのGmailアドレス@gmail.com"
    app_password = "アプリパスワード"

    msg = MIMEText(body, "plain", "utf-8")
    msg["Subject"] = subject
    msg["From"] = from_address
    msg["To"] = to_address

    with smtplib.SMTP(smtp_server, smtp_port) as server:
        server.starttls()
        server.login(from_address, app_password)
        server.send_message(msg)
        print(f"送信完了: {to_address}")

# 使用例
send_email(
    to_address="相手のアドレス@example.com",
    subject="週次レポートのご報告",
    body="お世話になっております。今週のレポートをお送りします。"
)

必要なライブラリ:標準ライブラリのみ

Gmailを使う場合は、Googleアカウントで「アプリパスワード」を発行しておく必要があります。


自動化⑤:画像を一括リサイズする

SNS投稿やWebサイト用に、大量の画像を決まったサイズに変換する作業も自動化できます。

from PIL import Image
import os

# 変換したい画像フォルダ
input_folder = "original_images"
output_folder = "resized_images"
target_size = (1200, 630)  # 幅×高さ(ピクセル)

os.makedirs(output_folder, exist_ok=True)

for filename in os.listdir(input_folder):
    if filename.lower().endswith((".jpg", ".jpeg", ".png")):
        img_path = os.path.join(input_folder, filename)
        img = Image.open(img_path)
        img_resized = img.resize(target_size, Image.LANCZOS)

        output_path = os.path.join(output_folder, filename)
        img_resized.save(output_path)
        print(f"変換完了: {filename}")

print("すべての画像の変換が完了しました!")

必要なライブラリpip install Pillow

100枚の画像でも数秒で処理が完了します。ブログのアイキャッチ画像の一括作成などにも応用できます。


自動化を始める前の注意点

便利なPythonの自動化ですが、使う際にいくつか注意しましょう。

① スクレイピングはサイトの利用規約を確認する
Webサイトによってはスクレイピングを禁止している場合があります。必ず利用規約を確認してから実行しましょう。

② ファイル操作は元データのバックアップを取る
自動化スクリプトのミスでファイルが消えてしまわないよう、実行前には必ずバックアップをとる習慣をつけましょう。

③ メール送信は少量でテストする
一括送信スクリプトは、まず1件だけ送信してみて、内容を確認してから本番実行しましょう。


まとめ

Pythonでできる自動化5選を紹介しました。

  1. ファイル自動整理:拡張子別にフォルダ分け
  2. Excel自動集計:月次レポートの集計を自動化
  3. Web価格チェック:商品の価格を自動監視
  4. メール自動送信:定期メールや一括送信
  5. 画像一括リサイズ:SNS・Web用に自動変換

これらのスクリプトはすべてコピー&ペーストして試せます。まず一つ動かしてみることが、自動化マスターへの第一歩です。

「実際に動かしてみたら面白かった!」「こんなことも自動化できる?」という感想や質問は、ぜひコメント欄で教えてください。


次のステップ:自動化に慣れてきたら、「PythonでWebアプリを作ろう|FlaskとDjangoどちらを選ぶ?」もぜひご覧ください。

よかったらシェアしてね!
  • URLをコピーしました!
  • URLをコピーしました!

<PR>

目次