この記事のポイント
Pythonでウェブ上の情報を自動で取得する方法を解説します。
はじめに
前回の記事で、Python実行Webアプリの「PyWeb」を使って、超簡単にPythonを始めることができました。
今回はPythonで最も有益な使い方の一つであるウェブ上の情報を自動取得する方法「ウェブスクレイピング」を超簡単に実行する方法を解説します。
今回も1分で実施できます。

ウェブスクレイピングができるようになると一気にプログラミングの凄さを実感できるようになります!
前回の記事
前回はPythonのWeb実行環境である「PyWeb」を使って、サクッとPythonプログラミングを始める方法を説明しました。


PyWebは以下リンクから始めることができます。完全無料です!
サンプルプログラムを使ってみる。
さすがにウェブスクレイピングのプログラムを初心者が1分でプログラミングすることは難しいです。ただし、PyWebには簡単にウェブスクレイピングが試せる「サンプルプログラム」が存在します。
サクッと使い方を解説します。
まず、画面左の「#SAMPLE」をクリックします。
次に、「スクレイピング.py」をダブルクリックします。


すると、画面中央に以下のようなコードが現れます。


最後に、画面右上の緑色の三角ボタン(run)をクリックします。
すると、画面右に「PyWeb 【Webで動作するPython実行/学習環境】」という文字が現れます。
以下の「緑色の三角ボタン」を押すと、実際にウェブスクレイピングを試すことができます。
これでウェブ上の情報を自動的に取得してコマンドに表示することに成功しました。
本当に1分で終わりましたね!
ウェブ上の情報が入手出来ているか確認する。
何か文字が表示されましたが、これはどこのウェブから取得した情報なのでしょうか?
答えはプログラムをよく読むと何となくわかります。
URL = ‘https://pyweb.ayax.jp/’
と4行目に記述があります。これが情報を取得するウェブページを示しています。
さらに、
print(soup.title.text)
と9行目に記述があります。これがさきほど取得したウェブページのタイトルを表示するという記述になっています。


では実際に「https://pyweb.ayax.jp/」のウェブページのタイトルを見てみましょう。ちなみにこのウェブページは、「PyWeb」のホームページです。
タイトルは検索した際に表示されるものなので、Googleで「PyWeb」と検索してみましょう。検索結果の中から「https://pyweb.ayax.jp/」のウェブページを探してみて、そのタイトルを確認してください。さきほど表示された文字と一致していることが確認できました。


このようにPythonを使うと簡単にウェブページの情報を取得できることがわかったと思います。
【発展】別のウェブサイトの情報を取得してみる。
タイトルでは、すこし分かりづらかったかもしれないので、実際にウェブページにある文章を取得してみたいと思います。
先ほどのURLを、このブログのホームページである「https://oyako-programming.com」に変更して、
表示する対象を「title」から「h1」に変更します、h1はウェブページのヘッダーにある大きな文字です。
これでまた、以下で緑色の三角ボタン(run)をクリックしてください。すると画面右に「ファミプログ【入門】」と表示されます。これがこのウェブページのヘッダーです。
では実際に、本当にヘッダーに「ファミプログ」と書かれているのか確認してみましょう。以下URLからこのブログのホームページに移動できます。


確かにヘッダーに「ファミプログ」と書かれていることがわかりますね。


このようにURLと、「h1」といったHTMLタグを指定してあげると好きなウェブページの好きな情報を自動で取得することが可能なのです!
これだけでもPythonの可能性を感じることができたのではないでしょうか?
ウェブスクレイピングの活用どころ
ウェブスクレイピングを使うと、ウェブにあるテキストや画像データを自動で収集することができます。
例えば毎日の日経平均の情報を取得したり、特許情報の最新データがアップされたら取得するといったことが可能です。今まで情報収集にかけていた膨大な時間をゼロにすることができます。



面倒な情報収集をすべてプログラムで自動に行うことができます。空いた時間はよりヒトでしかできないクリエイティブな作業にあてましょう!
【小ネタ】サンプルプログラムとは?
【結論】ユーザの理解を助けるためのお試しプログラムです。
「サンプルプログラム」はとても重要な存在です。プログラミングやエンジニアリング製品には辞書のようなマニュアルが存在しており、そのマニュアルを理解して初めてプログラミングを行うことができます。
ただし、そのように分厚いマニュアルを1から読み進めていては、実際にプログラムをできるようになるまでに大変な時間がかかってしまいます。
マニュアルベースでの学習ではなく、実践的に学習していくときに役立つのが「サンプルプログラム」です。
サンプルプログラムには、まずは簡単な機能を動かすために必要なプログラムが一通り記述されています。このプログラムをベースに自分が行いたい動作に近づくようにちょい変しながら試していくというのが、プログラミングを早くマスターするのに有効な学習の方法になります。



何事も0→1が一番難しいです。
サンプルプログラムは0→1の部分をすでに作ってくれているイメージです。
ウェブスクレイピングの注意
ウェブサイトによっては、許可なくウェブスクレイピングを実施することが禁止されていることがあります。
例えば、楽天のウェブサイトでは以下のように記載があります。
「第7条(禁止事項)(7) 当社の事前の許可を得ることなく、自動化された手段(自動購入ツール・ロボットなどこれらに準ずる手段)を用いて商品を購入すること(商品ページ上の情報取得等を含む)」(抜粋)
ウェブスクレイピングが禁止されているかの確認の仕方
ウェブスクレイピングが禁止されているウェブサイトでは、多くの場合、「利用規約」にその旨が記載されています。従って、スクレイピングをしてしまっても大丈夫かどうかは事前に利用規約を読んで確認しましょう。



ちなみに本サイトはウェブスクレイピングOKです!
練習に使ってみてください。
プログラミングをもっと学習したい方へ ~プログラミングスクールを試してみよう~
ここにいるあなたにはプログラミングの適正があります。
この記事を読んでプログラミングを始めてみて、少しでも楽しいと感じた方はプログラミングの適正があります!プログラミングに興味のない方はそもそもこの記事にたどり着かないですし、この記事の最後の章までたどり着きません。
プログラミングはとても楽しいアクティビティです。さらにこれが仕事になってお金も稼げるので一石二鳥です。
プログラミング学習を継続させるためには?
ただし、初心者が独学でプログラミング学習を続けるのが難しいのもまた事実です。
初心者がプログラミング学習でつまづく理由は以下です。
- 一人で学習するのでモチベーションを保ちづらい。
- ちょうど良い課題設定ができず、難しい or 簡単すぎる学習を続けてしまう。
- わからないポイントが明確でないため、検索すらできない。
プログラミング初心者でもプログラミング学習を継続して続けていくための選択肢として「プログラミングスクール」が考えられます。
一人では難しいモチベーション管理や、適度に難しい課題の設定、つまづいたときにすぐ聞ける環境など、学習を乗り越えるために必要なアシストをプログラミングスクールではすべて受けることができます。
決して安い投資ではありませんが、それに見合ったリターンは確実に得ることができます。
おススメのプログラミングスクール
私のおススメのプログラミングスクールは、「TechAcademy(テックアカデミー)」さんです。
TechAcademy [テックアカデミー]おススメの理由は「TechAcademy(テックアカデミー)」さんのこのような特徴にあります。
- 業界最大手の1つでメンター、カリキュラムが高品質
- 週2回のメンタリングを受けることができる
- いつでもチャットで質問可能、丁寧迅速回答
- 転職・副業保証コースがある
- 卒業後にも教材を閲覧することができる
- 手厚いサポートなのに他社より低コスト
やはり業界最大手の一角だけあり、安心のサポート・実績・価格です。ここにないコースをどうしても受けたい場合には、他のスクールを検討するくらいの感覚で問題ないと考えます。
特に副業コースで、最初の案件獲得までを保証してくれるサービスは他にはないため、副業でプログラミングにチャレンジしたい方には持ってこいのサービスとなります。


まずは、無料で試してみましょう!
「TechAcademy(テックアカデミー)」さんは無料キャリアカウンセリング、メンター面談があるので、まずは無料相談を試してから入会を考えることができます。プログラミングができるようになって、もっと自分の可能性を広げていきましょう。


次回 PyWebで作ったプログラムを保存する。
次回は、PyWebで作ったプログラムを保存する方法を解説します。お楽しみに。


コメント