プロじゃないのでコピペでコーディング!

四半世紀に迫ろうとするベテラン・コピペ・プログラマーが送るコピペの元。 張って動けば良し!動かなければなんで?そんな私をサポートするブログです。 ま、動けば良いと本人が思ってるなら、これでも良いんじゃね?って思ったら生暖かく見守って頂き、こりゃ目に余る!って思ったら、優しく教えてやってください。

PythonでExcelを扱ってみよう

Hello Excel

PythonExcelファイルを扱うという、とてもとても具体的で、内容そのものは他に何の応用も出来ない題材を選んでいます。

具体的すぎるというのは承知の上です。

python.always-basics.com

そんなこといっても、架空の題材をでっち上げてサンプルアプリ的に作るって言うのはよくある話で、私も研修資料を開発していた頃にはよくやっていました。

でも自分自身も含めて、具体性が無いんですよね。可能性をあまり感じないんですよ。

思いっきり具体的に

そこで思い切って、執筆時にまさに取りかかってた題材をそのまま使ってしまえってなもので。

Excelシートを住所録的に使っていたファイルがあり、残念なことに郵便番号が入力されていません。 そのため記入されている住所を元に郵便番号をWeb検索し、その結果を郵便番号欄に記録するというのをやってみています。

ここでは次の要素が登場します。

  • ExcelシートをPythonプログラムで読み込む
  • Pandasライブラリを使ってデータはDataFrameで操作する。
  • 郵便番号検索をするために、HTTPsリクエストと結果のパースを行う

Excelファイル扱うためにPandas

Pandasを使う動機に、不純とかそういう表現があるかどうかは知りませんが、あまり聞かない動機かも知れません。 でも、Pandas経由で使えることを知れば、Python使っててExcelでデータ処理してるの?って自問し始め、Pandasに興味を持てればそれもありかなとも思っています。

PandasでExcelファイルを読み込むと、どんな風にデータが展開されて、どんな風にデータを扱えば良いのかが分かるようになっています。

Padasについては、もっと詳しく取り上げようとしていて、以下の記事を皮切りに、シリーズ的に投稿中なので、そちらも是非見てください。

python.always-basics.com

その他の要素

その他の要素として、Pythonプログラムの中からHTTPリクエストを実行して、本来であればWebブラウザ上で表示される内容をプログラムで処理することで郵便番号を手に入れようとしています。 HTTPリクエストには、requestsパッケージを利用し、HTMLの解析にはHTMLParserが登場します。

もちろんExcelファイルを読み込むだけでは無くて、結果を書き込むところも登場します。

ただ、ラストワンマイルともうしますが、思いっきり個別具体的な対応方法については掲載していません。 その辺は記事を読んで頂ければ、なんとなく許してもらえるかなぁと...

それではもしよろしければ、お読み頂ければと思います。