前回記事からの続きです。
最低限の機械学習の知識を手に入れるため勉強中。
Pythonによるスクレイピング&機械学習を読み始めると、まずPythonでファイルをダウンロードしてみよう的な基礎的な内容が始まります。
僕はPython初心者なので新しい事を知れて楽しいです。
本記事は上記書籍の1-1「データダウンロード」の備忘録です。
ファイルの直ダウンロード
urllib.request.urlretrieve(ファイル名, 保存ファイル名)
とするとファイルを直にダウンロード出来ます。
ファイルをメモリ上にダウンロード
urlopenでメモリ上にファイルをダウンロードした後、それをファイルに書き込むという処理になっています。
ここで出てくる with ~ as
構文ですが、C#で言うusingのようなものだと認識しています。
処理を抜けると自動的にdispose、closeしてくれるため、コードをスッキリ書くことができそうです。
URLにクエリパラメータを付ける
urlencode関数を使うとJSON形式のvaluesをクエリパラメータ形式に変換し、下記のように出力してくれます。便利です。
コマンドラインから引数取得
sys.argv[1]
でコマンドラインの引数を取得できます。
ちなみにsys.argv[0]
とすると実行したファイル名を取得できます。
最後に
Pythonをほぼ初めて書いてみた感想としてはブレースがなくて、インデント管理された文法は見た目スッキリしていてとても書きやすく読みやすいです。
urllibには豊富な機能が入ってそうなので、調べてみるのも楽しそう。
ちなみにエディタはVisualStudioCodeを使っていますが、コード補完されるのでイイ感じ。
環境
- Python 3.6.3
- macOS 10.12.6