Python はじめることにしましたので備忘録

前々からPythonに手を出そうと思っていたのですが、ようやく重い腰を上げてはじめることにしました。

元々Perlで作っていたWebを巡回して、必要なデータをリスト化するプログラムを、Pythonに切り替えようかなと思っています。これをWebスクレイピングとか言うんでしたっけか。

自分が使えるPerlがVer.4までなので、そろそろ現行の流行りの言語に手を出すべきかなと。ポインタ系がC言語時代から苦手なのです。

まぁ、やってる内容が下世話なモノなので、あくまで備忘録的に記録していくだけですけどね。

 

 

まずは開発環境の準備です。

参考資料はこちら。

ai-inter1.com

元々YoutubeでJupterLabというIDE環境(でいいよね?)を見て、コマンドライン的に逐次その場で反映や確認できるのが、すごく良さそうでこれなら開発しやすそうだと思って、ようやく時間作って開発環境の準備を始めました。


www.youtube.com

こちらの動画は特にJupterLabの紹介動画ではないんですが、ここでJupterLabを見て虜になったわけです。

 

そして、まずは開発環境としてVisualStudioCodeをインストールしました。

code.visualstudio.com

結局JupterLabは入れなくて、VSCodeにしました。どのみちPerlも扱うとは思うし。

VSCodeをインストールして、拡張機能のMSのPythonをインストールし、その他は以下の動画を参考資料に便利そうなのをインストール


www.youtube.com

ついでに、PerlのためにPerlNavigatorもインストール。

 

が、うろ覚えで拡張機能をインストールしていたので、余計なものまで入っていた模様。拡張機能をアンインストールして、もう一度確認するべく別のサイトを探してチェック。

www.python.jp

よく見たら、これPython公式ですかね。

こちらを参考にして、ようやくPython本体もインストール。

個人用プログラムが基本となるので、バージョンごとに開発環境を準備する必要もないので、公式サイトから最新版(この時点では3.12)をダウンロードしてインストール。pathがちゃんと通ったか確認もしておく。

コマンドラインで「python」と打ち込んでもエラーなんですが、tab変換したら「py」だけで良かった模様。

 

とりあえず、これで開発環境は準備完了。

今まで組んでたPerlプログラム放り込んだら、PerlNavigatorからやたらと修正しろって言われたものの、直し方が分からず放置。最終的にPythonに置き換えちゃう方向で。

 

で、まだプログラムには手を出していません。

とりあえず、準備段階ですね。

 

やりたいことは、WebページのHTMLをダウンロードして、そこに貼られている特定のリンクURLを取り出すだけなので、ライブラリ系で一気にできそうではあるんですよね。

Perlで作ってたときはHTMLをダウンロードするライブラリしか使ってなかったので、HTML解析は自力でやってたんですよね。正規表現での取り出しが大変でした。ちょいちょいバグるし。

 

Webデータの取得関連は、このあたりを参考にすればいいのかな。

aiacademy.jp

www.insource.co.jp

x-tech.pasona.co.jp

 

一応、書籍もいくつか準備。

こちらをメルカリで確保。画像付きボタンははてなだと乗っけられないみたいなので、リンクだけ。

第4版が出ているけど、基本的なリファレンスにはなるんじゃないかなと。

あと、AmazonのPrimeReadingにPython本があったので、そちらも確保。

 

 

本を読みつつ、時間を見つけてプログラムを組む感じですね。

 

とりあえず、こちらのVtuberさんの動画を適当に流しながら、なんとなく基本的な文法から覚えなきゃならないですね。

www.youtube.com

 

元々BASICからはじめて、LSI-Cで遊んで、専門学校でネットやろうぜでゲーム作って、会社員になってCGIのためにPerlを覚えて、個人事業者になってから、自分のためにVBAPHPを摘んだりしていました。

ほんのちょっと触れたとか、目にした程度なら、DelphiやTcl/Tk、VisualBasicもありますけどね。Tcl/TkはVB系統のGUIを組める言語なので、面白そうだと思って本まで買ったのに、結局使い道がなくて、覚えるまでに至らなかったんですよね。

面白そうな言語やシステムには、興味があって覗きはするけど、何に使うかな?となった時に使い道が無くて、作るものが無くて、覚えるまでに至らないんです。

で、今回Pythonに手を出すところで、最大の障壁が構文です。

なんだかんだとCの派生系みたいな文法の言語ばかり使っているので、インデントでスコープ(で良かったっけ?)を分ける言語は使ったことがないのです。

文末のセミコロンのある無しについては、ちょくちょく忘れるので問題なしですw

 

Pythonを調べると、いろいろ出来ることが山程ありそうなので 、今やってることをかなり自動化できそうで、ちゃんと使えれば楽が出来そうだなと思ったりはしています。

...習得するまでどれだけかかるかわかりませんがね。

 

今回の備忘録はここまで。

読むものいっぱーい。