書店のプログラミングのコーナーでは、Pythonを使ってのい自動処理の本がいくつもあり、これに触発されて、ほぼ20年ぶりぐらいに、新しいプログラミング言語Pythonの勉強を少しずつ進めています。
自分のここ10年ぐらいのプログラミング経験は、EXCEL VBAでごくごく簡単なものを作るのに、ネットで参考になるコードをコピペ・切り貼りして作るのがたまにある程度です。その前には、必要に迫られ10年以上前にUnixの環境で、Perlを使ってテキスト処理を数年間行なったことがある程度です。
大昔にperlを勉強した際には、本を一冊買ってそれを読み進めて学びましたが、今はとても便利です。まずはオンラインサービスのprogateのpythonを履修しました。一応、これで基本的な書き方についてperlとの違いをとりあえず把握することができました。perlは、一連の処理はカッコで括ったり、行末に「;」を入れなくてはならなかったりと、自分の作ったプログラムのバグとりが大変でしたが、pythonではインデントによりループの処理範囲を示すようになっていているなど、シンプルで素晴らしいです。
そして、次には同じくオンライン動画サービスのUdemyからいくつか興味のあるものを購入して、見ています。
perlでプログラミングをしていた頃には、ライブラリの活用が今ひとつうまくできず、今にして思えば無駄な時間を結構使っていたように思いますが、Pythonでは、ライブラリの活用が必須で、Pythonの本でも、こうしたライブラリをうまく活用していく方法が中心というかになっています。
動画やオンラインの講座では、分からないところを調べるのが不便なので、次のステップとして、本を購入することにしました。書店へ行き、大量の本の中から、参考になりそうな本として「シゴトがはかどるPython自動処理の教科書」他2冊を購入しました。
この本は、2020年の発行で、少し古いのが気になるところですが、使ってみたい機能のサンプルプログラムが揃っていたので、購入しました。おそらく慣れてくるとこうした情報をネットから入手することもできるようになるのでしょう。
最初に試してみたい機能として、gmail. yahoo, の保有するアカウントからのメールの自動送信を試しました。ただ、gmailについては、そのために作成したアカウントでは、この本で説明されているセキュリティ項目の変更ができずに実行できませんでした。yahooメール、lineのアカウントからの送信はそれぞれ本に記載されているプログラムが動くことが分かりました。
次に、習得したい知識として、webスクレイピングを考えていたのですが、この本では基本的なものが、いくつかサンプルプログラムとして掲載されていましたが、beautifulsoupの記載方法がバージョンが4へ変わった時に変更されていて、そのままでは動かないということが分かり、現在その修正に取り組んでいます。
そのために、同時に購入した「ビジネスパーソンのための実践解説[Python]スクレイピング&クローリングデータ収集マスタリングハンドブック」と「第2版 退屈なことはPythonにやらせよう」を並べて読みつつ進めています。