TechCraft – エンジニアのためのスキルアップメモ

エンジニアのスキルアップを少しでも加速する技術ブログ

Pythonで生活も仕事も爆速化!5分でできる自動化スクリプト集

Pythonで生活も仕事も爆速化!5分でできる自動化スクリプト

Pythonって何ができるの?」
「コード書いても仕事にどう役立つのかわからない…」
そんな風に思っている方にこそ読んでほしい。Pythonは“ちょっとした自動化”こそ真骨頂。特に日常業務や生活のちょっとした手間を一瞬で解決できるのが魅力です。

本記事では、Python初心者でも5分で試せる自動化スクリプトを厳選して紹介します。1行1行に意味があり、すぐ使える。これを機に「自分のためにコードを書く」楽しさを味わってください!


1. Webから天気予報を取得して朝の支度をスムーズに

使用ライブラリ:requests, BeautifulSoup

import requests
from bs4 import BeautifulSoup

url = "https://tenki.jp/forecast/3/16/4410/13101/"  # 東京都心の天気
res = requests.get(url)
soup = BeautifulSoup(res.text, 'html.parser')
weather = soup.select_one('.forecast-today .weather-telop').text.strip()
print(f"今日の天気:{weather}")

→ これで朝起きてすぐ天気がわかる!SlackやLINE通知に組み合わせればさらに便利。


2. 毎日9時にSlackに「おはようございます」を投稿

使用ライブラリ:schedule, time, requests

import schedule
import time
import requests

def greet():
    requests.post(
        "https://hooks.slack.com/services/XXX/YYY/ZZZ",
        json={"text": "おはようございます!今日も頑張りましょう!"}
    )

schedule.every().day.at("09:00").do(greet)

while True:
    schedule.run_pending()
    time.sleep(60)

cronと組み合わせることで実行も完全自動化可能!


3. Excelを自動で読み取って請求書を作る

使用ライブラリ:pandas, openpyxl

import pandas as pd

df = pd.read_excel("請求元データ.xlsx")
total = df["金額"].sum()

with open("請求書.txt", "w", encoding="utf-8") as f:
    f.write(f"合計請求金額:{total} 円")

openpyxlでテンプレート書き込みも可能。実務での自動帳票に応用できます。


4. ファイルを自動で整理(画像、PDF、Wordなど)

使用ライブラリ:os, shutil, pathlib

import shutil
from pathlib import Path

desktop = Path.home() / "Desktop"
for file in desktop.glob("*.*"):
    ext = file.suffix.lower()
    if ext in [".jpg", ".png"]:
        dest = desktop / "画像"
    elif ext in [".pdf"]:
        dest = desktop / "PDF"
    else:
        continue
    dest.mkdir(exist_ok=True)
    shutil.move(str(file), str(dest / file.name))

→ デスクトップが一瞬で整頓される快感をぜひ!


5. Gmailの新着メールをチェックして通知

使用ライブラリ:imaplib, email(+Google設定)

import imaplib
import email
from email.header import decode_header

user = "youremail@gmail.com"
password = "your_app_password"

mail = imaplib.IMAP4_SSL("imap.gmail.com")
mail.login(user, password)
mail.select("inbox")

_, messages = mail.search(None, 'UNSEEN')
for num in messages[0].split():
    _, data = mail.fetch(num, '(RFC822)')
    msg = email.message_from_bytes(data[0][1])
    subject = decode_header(msg["Subject"])[0][0]
    print("新着メール:", subject)

→ 2段階認証のあるGmailは「アプリパスワード」が必要。Slack通知などに応用可能!


まとめ:Pythonの自動化は「自分の便利」のためにある

スクリプト 所要時間 難易度 実用性
天気予報の取得 5分 ★☆☆ 毎日使える
Slack自動投稿 10分 ★★☆ チーム向け
Excel読み込みと請求書出力 15分 ★★☆ 業務自動化に最適
ファイル整理 10分 ★★☆ 日常整理術
Gmailチェック 20分 ★★★ 業務通知に便利

Pythonは何も“すごいAI”や“巨大なWeb開発”のためだけのものではありません。
自分のちょっとした「めんどくさい」を解決するのが、Pythonで自動化する最大の魅力です。


参考リンク

参考書籍