Pythonを活用した業務自動化

Pythonとその豊富なライブラリを使用して、日常業務の効率を向上させる方法について説明します。以下はいくつかの実践例です。

1. ドキュメント操作

1.1 Python-docxによるWord文書処理

`python-docx`ライブラリを使用して、Word文書を読み取り、修正し、作成できます。
from docx import Document

# 新しいWord文書を作成
report = Document()

# タイトルと段落を追加
report.add_heading('レポートタイトル', 0)
report.add_paragraph('これは段落です。')

# 文書を保存
report.save('sample_report.docx')

1.2 Pandasを使用したExcelファイル操作

Pandasはデータ解析に強力なライブラリで、Excelファイルの読み込みや編集が可能です。
import pandas as pd

# Excelファイルを読み込む
data_frame = pd.read_excel('input_data.xlsx')

# データのフィルタリングと加工
filtered_data = data_frame[data_frame['value'] > 5]

# 加工後のデータを保存
filtered_data.to_excel('output_data.xlsx', index=False)

2. メール送信の自動化

`smtplib`と`email`モジュールを使ってメール送信を自動化できます。
import smtplib
from email.mime.text import MIMEText
from email.mime.multipart import MIMEMultipart

# メールオブジェクトを作成
message = MIMEMultipart()
message['From'] = '送信者@example.com'
message['To'] = '受信者@example.com'
message['Subject'] = 'テストメール'

# メール本文を追加
body_text = 'これはPythonを使用して送信されたテストメールです。'
message.attach(MIMEText(body_text, 'plain'))

# メールを送信
mail_server = smtplib.SMTP('smtp.example.com', 587)
mail_server.starttls()
mail_server.login('送信者@example.com', 'パスワード')
mail_server.sendmail(message['From'], message['To'], message.as_string())
mail_server.quit()

3. 定期的なタスクスケジューリング

`schedule`ライブラリを使用して定期的に特定のタスクを実行する設定が可能です。
import schedule
import time

def execute_task():
    print("タスクを実行中...")

# 15秒ごとにexecute_task関数を実行
schedule.every(15).seconds.do(execute_task)

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

Pythonを使用することで、WordやExcelなどのドキュメント操作、メールの自動送信、定期的なタスクのスケジューリングなど、さまざまな業務を効率化できます。また、requestsやBeautifulSoupを使用してウェブサイトから情報を自動的に取得することも可能です。

タグ: Python Pandas python-docx smtplib schedule

5月16日 08:47 投稿