インターネット上から、自動でデータを取り込み、処理するには?

━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━
   仕事が楽しくなるプログラミング入門講座 初心者でも必ずできる!

          2010/03/04 第6号
          http://itjob.pgtop.net
━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━

「プログラミングを通じて、人々の生活を豊かにする。日本経済を元気にする。」

こんにちは、メルマガ発行人の mslab です。
いつもお読みいただき、ありがとうございます。

前回の第5号で、
「インターネット上のデータを自動的に集める」、「自動的に処理する」
ということに少し触れました。

その必要性を感じていたり、興味のある読者様もいらっしゃるようなので、
今回は少し詳しく説明したいと思います。

詳しくは本文で。


メルマガのバックナンバーは、以下のページでご覧いただけます。
http://itjob.pgtop.net


*このメールマガジンに登録したお心当たりがない方、または不要な場合は、
大変お手数ですが、以下のリンクから登録を解除してください。

配信中止はこちら http://www.mag2.com/m/0001065221.html


第6号のメニューはこちらです。

■インターネット上から、自動でデータを取り込み、処理するには?
■インターネットでは、様々な情報が提供されている。
■HTMLから情報を取り出すには?
■インターネットで取得できるデータの例
■編集後記 


今、これがオススメです。バイヤーが商品を厳選!
http://www.moshimo.com/top/307575/

売れているランキングや、新着商品もわかる。


━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━
■インターネット上から、自動でデータを取り込み、処理するには?
━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━

実は、インターネット上の情報を収集することは、珍しいことではありません。

検索エンジンのクローラーや、スパイダーと呼ばれるソフトウェアなどは、有名
です。

あなたも一度は聞いたことがあるのではないでしょうか?

クローラーやスパイダーは、Webサイトを巡回して、データを集めるプログラム
のことです。

これらに関連する情報は、書籍やインターネット上にも沢山あります。

興味のある人は、探してみてください。

ただ、プログラミング初心者には、内容が難しいかも知れません。

そこで初心者にオススメの方法があります。

インターネット上の情報を収集する、一番簡単な方法は、XMLやRSSなど、公開
されている情報を取得することです。

XMLやRSSなら、比較的簡単にデータを取り込み、処理することができます。

まずはXMLやRSSなどの取得しやすいデータから始めて、慣れてきたらHTMLから
データを取得してみてはどうでしょうか?

また、取得したデータは、データベースソフトや表計算ソフトに保存しておく
と、後で集計したり分析することが、簡単にできます。


━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━
■インターネットでは、様々な情報が提供されている。
━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━

今はインターネット上に情報が溢れ、しかも日々増えています。

その大半が文字情報です。特にHTML形式は多いです。

また最近は、XMLやRSS、CSV、JSONで提供される情報も充実してきました。

・XML、JSON Webサービス(WebAPI)など
・RSS、RDF ブログ、オークション、検索エンジンなど
・CSV 商品データ、住所データ(都道府県 市町村 地域)など
・HTML ほとんどのWebサイト

これら「公開されている情報」の多くは、プログラミング言語を使って、取得
可能です。

特にXMLやRSSなどは、他のアプリケーションソフトで利用されることを前提に
提供されているので、扱いやすいです。

例えば、RSSリーダーなどがそうです。

XMLは、異なるシステム間(コンピュータ)、でデータをやり取りすることが
目的なので、データを取得することは簡単にできます。

RSS、RDFもXMLの一種です。

XMLは自由にタグ名を付けられますが、RSSやRDFはタグ名のルールが決まって
います。

「決まっている」とうことは、データの取得が楽です。

何故なら、プログラミングしやすいからです。

XMLやRSS、RDFなどは、利用規約に従えば、誰でも利用できます。

CSV形式(comma separated value)だと、データベースに直接取り込めます。

当入門講座でも少しずつ取り上げていきますが、具体的な方法については、
書籍やインターネットにも、たくさん情報があります。


━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━
■HTMLから情報を取り出すには?
━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━

目的のデータが、都合よくXMLやRSSなどの形式で提供されていればよいのですが、
なかなかそうもいきません。

Webサイトの多くは、HTML形式です。

ということは、ほとんどの情報は、まだHTMLの状態でしか得ることができませ
ん。

HTMLは、ホームページの構造を記述するための言語なので、データの交換には
不向きです。

そのため、HTMLから目的のデータを取り出すには、工夫が必要です。

そこがXMLやRSSなどとの大きな違いです。

HTMLの場合も、HTML全体の取得は、簡単にできます。

また取得したデータから、HTMLタグを取り除くことも、簡単に出来ます。

プログラミング言語によっては、HTMLタグを取り除く関数が、あらかじめ用意
されています。

ただし、その中からデータを取り出すには、解析部分を自分でプログラミング
しなければなりません。

そのため、XMLやRSSなどに較べると、HTMLは手間がかかります。

例えば、

(1)HTMLタグを手がかりに文字列を抽出する。
・titleタグの間の文字列は、タイトルだとわかります。
・descriptionの後には、Webサイトの要約が書かれています。
・keywordsの後ろからは、重要なキーワードが拾えます。

(2)前後の文字列から、検索して切り出す。
・円の前は金額のことが多いです。
・日経平均株価やNYダウの後には、相場が書かれています。
・アメリカドル(米ドル)、ユーロなどの後ろには、為替相場が書かれています。

でもこれらの方法だと、Webサイトの構造や文字列が変われば、プログラムも
変更しなければならないのが欠点です。

HTMLタグや文字列を変えられると、データが取得できなくなるからです。

また、コンテンツであるWebページ自体が、削除されることもあります。

つまり、Webサイトの変更に弱いのです。

HTMLから自動的にデータを取り出すには、Webサイトの変更に合わせて、
プログラムのメンテナンスが必要になることを、覚えておいてください。


━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━
■インターネットで取得できるデータの例
━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━

インターネット上で、XMLやRSS形式で取得できる例を、いくつか挙げます。

(1)楽天ウェブサービス(webservice)
http://webservice.rakuten.co.jp/

楽天市場の膨大な商品データを、XMLやJSON形式で取得することができます。


(2)Yahoo!オークション
http://auctions.yahoo.co.jp/jp/

オークションの検索結果が、RSSで提供されています。


(3)livedoor ブログ検索
http://blogsearch.livedoor.com/

ブログの検索結果が、RSSで提供されています。


オークションもブログも、「検索結果」のRSSが取得できるのがポイントです。

キーワードごとのRSSが利用できるので、情報を集める時に、必要な情報だけ
取得しやすいメリットがあります。

例えば「デジカメ」という検索結果のRSSを使うと、デジカメに関する情報を
集めやすくなります。

完璧ではありませんが、情報の精度が上がります。

もちろん複合キーワードも使えます。

「デジカメ 画素数」などにすると、より精度が上がります。

つまりキーワードは、フィルターの役割があります。

膨大なインターネットの情報の中から、目的の情報が探しやすくなるわけです。


他にもインターネット上からは、いろんなデータが収集できます。

「Webサービス」、「WebAPI」、「RSS」などのキーワードで、検索してみると
よいでしょう。


━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━
■編集後記
━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━

最後までお読みいただき、ありがとうございました。

実は、インターネット上からの「データ取得」の詳細に関しては、もう少し後
で取り上げようと思っていました。

でも興味がある読者様もいらっしゃるようなので、予定を変更して、詳細な
内容を説明しました。

次回はどんなプログラミング言語やデータベースを使ったらいいのかなど、
より具体的な内容を説明したいと思います。

このように、読者様のご感想で、予定が変わることもあります。

出来る範囲で、インタラクティブ(双方向、対話型)な一面もあるメルマガに
したいと考えています。

では、また次回にお会いしましょう。


おとりよせスイーツ
http://www.moshimo.com/bargain/sweets/307575/

ロールケーキやモンブランなど、美味しいそうなお菓子がいっぱい。


━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━
■ご感想やご要望
━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━

各講座やメルマガについてのご感想やご要望がございましたら、以下のリンク
にある入力フォームから送ってください。楽しみにしています。

ご感想やご要望はこちら
https://itjob.up.seesaa.net/web/mail-itjob.html


━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━
マガジンID:0001065221 仕事が楽しくなるプログラミング入門講座
発行者 :mslab
発行者Webサイト : http://itjob.pgtop.net
メールはこちら : mail-m@bzen.net
バックナンバー : http://itjob.pgtop.net
メルマガの登録・解除 : http://www.mag2.com/m/0001065221.html


このメールマガジンは、
『まぐまぐ』 http://www.mag2.com/ を利用して発行しています。

……………………………………………………………………………………………
Copyright(C) 2010 mslab All rights reserved.

スポンサードリンク

スポンサードリンク






仕事が楽しくなるプログラミング入門講座 TOPへ

×

この広告は90日以上新しい記事の投稿がないブログに表示されております。