「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選を紹介しました。
- ファイル自動整理:拡張子別にフォルダ分け
- Excel自動集計:月次レポートの集計を自動化
- Web価格チェック:商品の価格を自動監視
- メール自動送信:定期メールや一括送信
- 画像一括リサイズ:SNS・Web用に自動変換
これらのスクリプトはすべてコピー&ペーストして試せます。まず一つ動かしてみることが、自動化マスターへの第一歩です。
「実際に動かしてみたら面白かった!」「こんなことも自動化できる?」という感想や質問は、ぜひコメント欄で教えてください。
次のステップ:自動化に慣れてきたら、「PythonでWebアプリを作ろう|FlaskとDjangoどちらを選ぶ?」もぜひご覧ください。

