Pythonsugi【コード公開】【初心者のためのPython入門】Webスクレイピング〜画像データのダウンロード〜ツイートシェアはてブ送るPocketTweet汎用性の広いPythonを0から習得するためのフロー及び実際にPythonで開発を行い開発案件を獲得するまでの筋道について解説しているチュートリアル資料とコーディングの参考となる実際にPythonを使って作ったツールのソースコードを無料で配布していますので、こちらも併せてご覧ください。初心者・入門者でも30日間で学習できるおすすめPython学習方法おすすめのプログラミングスクールの比較・特徴をまとめた記事を執筆しております。今回は、Webスクレイピングを利用してWebサイトから画像データのダウンロードする方法を紹介します。ライブラリ「urllib」を使ってダウンロードしてみましょう。プログラムの概要としては以下のものです。・指定したURLから任意の情報を取得する。コードとしては以下のものです。・ライブラリ「urllib」の取り込み。・URLと保存パスを指定する。それでは、ファイルエディタウィンドウを開いて、任意の名前.pyのファイルを作成・保存してください。Web上の情報を取得する方法Pythonでは、Webサイトにある画像データを取得すrために「urllibライブラリ」を使用します。このライブラリを使うと、HTTPやFTPを利用して画像データをダウンロードすることができます。ライブラリ「urllib」は、URLを扱うモジュールを集めたパッケージだということですね。その中でも、「urllib.requestモジュール」は、Webサイトにある画像データにアクセスする機能を提供しています。認証やリダイレクト、Cookieなど、インターネットで利用されるさまざまなリクエストや処理に対応しています。urllib.requestを使ったダウンロード最初に、Webサイトからファイルをダウンロードする方法から紹介します。ファイルをダウンロードするには、urllib.requwstモジュールにあるurlretrieve()関数を利用します。この関数を利用することによって、直接ファイルをダウンロードすることができます。以下に記載するのは、Web上にアップされているPNGファイルを任意のファイル名で保存するプログラムになります。savename)print("保存しました")Pythonのプログラムを確認してみましょう。Pythonでライブラリを利用するためには、import文を利用して、ライブラリを取り込む必要があります。上記のプログラムはurllib.requestモジュールを取り込んでいます。「urllib.request」のように、ドット「.」で区切ってモジュールを指定していますが、これは「urllibパッケージの配下にあるrequestモジュールである」という意味になります。ダウンロードの部分では、ファイルをダウンロードしています。urlretrieve()の第1引数にURLを、第2引数に保存先のファイルパスを指定しています。urlopen()でファイルに保存する方法セッション3では、request.urlretrieve()関数を利用してファイルに保存していました。セッション4では、request.urlopen()を利用する方法を紹介します。request.urlopen()を使うと、直接ファイルに保存するのではなく、画像データがPythonのメモリ上に取得されます。そこで、request.urlopen()を利用する場合には、メモリ上に取得した画像データを明示的にファイルに保存しています「画像データを取得できた場合、取得したデータをファイルに保存する」といった流れになります。以下にソースコードを記載します。f:f.write(png)print("保存しました")ダウンロードの部分では、urlopen()関数によってPNGファイルのURLリソースを開きます。そのあとに、read()メソッドで画像データを読み取ります。ファイルへの保存のコードでは、ファイルを開くopen()関数を利用してファイルを開きます。ファイルの読み書きモードを表している「mode」を”wb”にしてファイルを開きます。「w」は書き込みモードを表し、「b」はバイナリモードを表しています。最後に、write()メソッドを利用して、ダウンロードしたバイナリデータをファイルに保存しています。今後もスクレピングの学習を続けていく場合は、テキストデータに関する情報を理解する力やビッグデータをいかに活用していくかを考えなければなりません。必要となるのがデータを利用して何にスクレイピングが有効になるのか、実例をもとに根拠を持って取り組まなければならないです。いったプログラミング言語pythonによるデータアナリストの知見や経験を取り込んだ学習教材として良書が以下の本になるので、合わせて検討して頂ければと幸いです。コメントをキャンセルメールアドレスが公開されることはありません。*サイト次回のコメントで使用するためブラウザーに自分の名前、メールアドレス、サイトを保存する。【コード公開】【初心者のためのPython入門】Webスクレイピング〜サイトを丸ごとダウンロード〜【コード公開】【初心者のためのPython入門】Webスクレイピング〜Webページから任意のデータを抽出する〜RECOMMENDこちらの記事も人気です。mapsのデ...ABOUTこの記事をかいた人sugi大学卒業後、IT企業に就職を果たす。システム開発・人工知能に触れながら大手企業と業務をこなす。2年半後脱サラし、現在フリーランス活動中。2019年2月から起業する予定。自社サービス及び製品を開発し、売り上げを立てている。