Pythonによる自動化プログラムの事例

Pythonで仕事自動化の事例を紹介します。

ご紹介している事例はまだ少ないですが、順次追加します。自動化できたらいいなというルーチンワークがございましたら、ご要望をお寄せください。

また、以下の事例のカスタマイズのご依頼も承ります。是非、お問い合わせください。

フォルダとファイルの操作

日頃何気なく行っているルーチンワークに、フォルダやファイルの操作があります。大したことない作業でも、毎日積み重なると相当な時間のロスになります。まず、自動化したい作業です。

フォルダ内のファイル一覧の取得

日常業務でフォルダやファイルの操作や整理は、時間を浪費してしまう作業の一つです。そこで、今回はPythonを使ったファイル操作の基本として、カレントフォルダ内のファイル一覧をCSVファイルに出力するプ…

フォルダの作成

今回はPythonで複数の新規フォルダを瞬時に作成します。以下のように、CSVの店舗コードファイルから店舗名の空フォルダを自動作成します。 空フォルダを毎回作成することは、日常業務でよく…

エクセルファイルを扱う

デスクワークといえば、やはりエクセルです。見積書から精算書や勤怠表まで、守備範囲が広いだけに、ここをいかに自動化するかが、業務効率化のキモです。

no image
今回は20日締めの勤怠管理表の日付と曜日の部分を自動入力します。20日締めだと月をまたぐので、手動だと意外と面倒です。それを毎月行うのはとても無駄です。このようなルーチンワークはPythonで自動化し…
今回はエクセルの会員名簿ファイルから、有効期限内の会員だけを抽出して、別のテキストファイルに出力する作業をPythonで自動化します。 会員制のサービス運営において、ある条件の会員だけを…

PDFファイルを扱う

PDFは印刷と同じレイアウトで保存でき、ペーパーレスで書類を扱える利便性からビジネスでは不可欠なファイル形式です。

しかし、PDFはプログラマにとっては、非常に頭の痛いファイル形式です。既存のPDFファイルの解析が難しいのです。そのため、欲しい内容を抜き出したり変更することは、非常に骨が折れる(または出来ない)ことがあります。

JavaやC#が使える場合には…

そのため、既存のファイルを解析し、複雑な処理をすることが初めから分かっている場合は、Apache PDFBox やiText(Sharp)といった強力なライブラリを使えるJavaC#での開発を検討した方が良いかもしれません(それでも無理なことがあります)。

iText(Sharp)はライセンスに注意

iTextとそのC#版のiTextSharpは無料版がありますが、ライセンスはAGPLです(詳細はiTextのサイトを確認してください)。従って、通常はApacheライセンスのPDFBoxの方が利用しやすいです。

Pythonでは一芸ライブラリを組み合わせる

しかし、Pythonにはフルスタックよりも、一芸に秀でたライブラリがたくさんあります。このような一芸ライブラリをうまく組み合わせれば解決できる課題は多いです。それこそPythonらしいプログラミングです。

ここでは、ライブラリにReportLabPyPDF2を活用した例を紹介します。

ReportLab帳票などの新規PDF作成PyPDF2既存ページの結合・回転・コピーなどを可能にします。この2つのライブラリを活用すれば大抵の日常業務なら大丈夫です。ここでは基本的なPDF処理を紹介します。

今回はPythonで日本語をPDF出力してみます。ライブラリにはReportLabを利用します。 前回のC#の場合と同じく、真ん中に「こんにちは、世界!」と出力します。ReportLabはPDF…