【Python初心者向け】業務を効率化!日常で使える簡単スクリプト
日常業務やパソコンの使用中、よく繰り返し行う作業や特定の情報を素早く取得したい場面があります。Pythonは強力で柔軟なプログラミング言語として、これらの作業を自動化し、効率を向上させるための小さなスクリプトを作成するのに適しています。本記事では、Pythonの実用的な小スクリプトをいくつか紹介し、読者が実際の問題解決にPythonを活用できるようにします。
(一)ファイルの一括リネーム
大量のファイルを扱う際に、手動でのファイル名の変更は手間がかかります。Pythonを使用することで簡単にファイルの一括リネームが可能です。以下はそのサンプルスクリプトです:
import os
def batch_rename(directory, prefix):
for count, filename in enumerate(os.listdir(directory)):
dst = f"{prefix}{str(count)}.txt"
src = os.path.join(directory, filename)
dst = os.path.join(directory, dst)
os.rename(src, dst)
directory = "path/to/your/directory"
prefix = "new_file_"
batch_rename(directory, prefix)
指定されたディレクトリ内のすべてのファイルを順に処理し、指定されたプレフィックスと連番でリネームします。
(二)ファイルのバックアップ
重要なファイルの定期的なバックアップは良い習慣です。以下はシンプルなファイルバックアップスクリプトです:
import shutil
import os
import time
source_directory = "path/to/source/directory"
backup_directory = "path/to/backup/directory"
def backup_files():
timestamp = time.strftime("%Y%m%d%H%M%S")
backup_folder = os.path.join(backup_directory, f"backup_{timestamp}")
os.makedirs(backup_folder)
for filename in os.listdir(source_directory):
source_file = os.path.join(source_directory, filename)
destination_file = os.path.join(backup_folder, filename)
shutil.copy2(source_file, destination_file)
backup_files()
指定されたソースディレクトリ内のファイルを別のディレクトリにバックアップし、バックアップフォルダ名にタイムスタンプを追加します。
(三)自動メール送信
場合によっては、自動的にメール通知を送る必要があるかもしれません。以下は、smtplibライブラリを使用してメールを送信するサンプルです:
import smtplib
from email.mime.text import MIMEText
def send_email(subject, body, to_email):
from_email = "your_email@gmail.com"
password = "your_password"
msg = MIMEText(body)
msg['Subject'] = subject
msg['From'] = from_email
msg['To'] = to_email
server = smtplib.SMTP('smtp.gmail.com', 587)
server.starttls()
server.login(from_email, password)
server.sendmail(from_email, to_email, msg.as_string())
server.quit()
subject = "Test Email"
body = "This is a test email sent from Python."
to_email = "recipient_email@gmail.com"
send_email(subject, body, to_email)
GmailのSMTPサーバーを使用してメールを送信します。自身のメールアドレスとパスワードを適切な場所に置き換える必要があります。
(四)リマインダー
リマインダー機能が必要な場合、以下のスクリプトを使用できます:
import time
import winsound
def set_reminder(message, delay):
time.sleep(delay)
print(message)
winsound.Beep(1000, 1000)
message = "Time for a break!"
delay = 3600 # リマインダー時間は 1 時間 (3600 秒)
set_reminder(message, delay)
指定した遅延時間後にリマインドメッセージを表示し、ビープ音を鳴らします。
(五)画像の一括圧縮
大量の画像ファイルを圧縮し、ファイルサイズを縮小したり、ストレージを節約したりする必要がある場合、次のスクリプトが役立ちます:
from PIL import Image
import os
def compress_images(directory, quality):
for filename in os.listdir(directory):
if filename.endswith(".jpg") or filename.endswith(".png"):
img_path = os.path.join(directory, filename)
img = Image.open(img_path)
img.save(img_path, optimize=True, quality=quality)
directory = "path/to/your/images/directory"
quality = 70 # 圧縮品質を設定する、範囲は 0 ~ 100
compress_images(directory, quality)
指定されたディレクトリ内のすべてのJPEGおよびPNG画像を圧縮し、指定された画質レベルに圧縮します。
(六)一時ファイルのクリーニング
パソコンの一時ファイルはストレージを占有し、システムのパフォーマンスに影響を与える可能性があります。以下は、特定のディレクトリ内の一時ファイルを削除するスクリプトです:
import os
def clean_temp_files(directory):
for filename in os.listdir(directory):
file_path = os.path.join(directory, filename)
if os.path.isfile(file_path) and filename.startswith("temp_"):
os.remove(file_path)
directory = "path/to/temporary/files/directory"
clean_temp_files(directory)
指定されたディレクトリ内の「temp_」で始まる一時ファイルを削除します。
これらのPythonスクリプトは日常業務やパソコン管理において大いに役立ちます。作業効率を向上させるだけでなく、パソコンのリソース管理や各種作業の処理を助けてくれます。自分のニーズに合わせて、これらのスクリプトをさらに修正、拡張し、さまざまな場面で活用してください。
記事参照:https://blog.csdn.net/m0_60315436/article/details/143181235