PHP プログラムで Wikipedia の情報を取り出してみる

Wikipedia の膨大な情報を、PHP で作ったプログラムから参照する方法について、簡単にまとめてみました。

まず、Wikipedia の情報は、ブラウザで通常のアクセスを行うとレンダリングされた結果が帰ってきます。

こんな URL ですね。

[code lang=’text’] http://ja.wikipedia.org/wiki/検索ワード
[/code]

そして、XML 形式でデータを取り出したい場合は、次のような形式の URL でアクセスすれば OK です。

[code lang=’text’] http://ja.wikipedia.org/wiki/特別:データ書き出し/検索ワード
[/code]

※実際の URL では、日本語部分はすべて URL エンコードする必要があります

そして、プログラムから上記 URL を呼び出そうとすると、問題が起きます。

たぶん次の様なエラーです。

[code lang=’text’] failed to open stream: HTTP request failed! HTTP/1.0 403 Forbidden
[/code]

要するに、アクセスが禁止されているわけですね。

どうやらブラウザ以外をはねているようですが、ユーザーエージェントで判断しているだけみたいなので、次のコードで取得することが可能です。

[code lang=’php’] //ユーザーエージェントをごまかす
ini_set(“user_agent”, “Mozilla/4.0 (compatible; MSIE 7.0; Windows NT 6.0)”);

//Wikipedia からデータ取得用の URL を作る
$wiki_url = ‘http://ja.wikipedia.org/wiki/%E7%89%B9%E5%88%A5:%E3%83%87%E3%83%BC%E3%82%BF%E6%9B%B8%E3%81%8D%E5%87%BA%E3%81%97/’;
$url = $wiki_url . urlencode($keyword);

//XML を読み込む
$xml = simplexml_load_file($url);
[/code]

ここまで作れてしまえば、後は次の様に多次元連想配列でアクセスできます。

[code lang=’php’] //データ本体
$xml->page->revision->text
[/code]

上記コードで取得できる情報は、Wiki 記述になっていますので、PEAR などで出ているレンダラー使えば HTML 化できますね。

10年集客し続けられるサイトを、ワードプレスで自作する9つのポイント プレゼント

【最後まで読んでくれたあなたに】

あなたは、24時間365日、自分の代わりに集客し続けてくれるWebサイトを作りたい!と思ったことはありませんか?

私はこれまで500以上のWebサイトの構築と運営のご相談に乗ってきましたが、Webサイトを作ってもうまく集客できない人には、ある一つの特徴があります。

それは、「先を見越してサイトを構築していないこと」です。
Webサイトで集客するためには、構築ではなく「どう運用するか」が重要です。

しかし、重要なポイントを知らずにサイトを自分で構築したり、業者に頼んで作ってもらってしまうと、あとから全く集客に向いていないサイトになっていたということがよく起こります。

そこで今回、期間限定で
『10年集客し続けられるサイトをワードプレスで自作する9つのポイント』
について、過去に相談に乗ってきた具体的な失敗事例と成功事例を元にしてお伝えします。

・ワードプレスを使いこなせるコツを知りたい!
・自分にピッタリのサーバーを撰びたい!
・無料ブログとの違いを知りたい!
・あとで悔しくならない初期設定をしておきたい!
・プラグイン選びの方法を知っておきたい!
・SEO対策をワードプレスで行うポイントを知りたい!
・自分でデザインできる方法を知りたい!

という方は今すぐ無料でダウンロードしてください。

期間限定で、無料公開しています。

※登録後に表示される利用条件に沿ってご利用ください

PHP プログラムで Wikipedia の情報を取り出してみる” に対して1件のコメントがあります。

  1. Even though you usually are unique, it can take each results as well as talent to master this unique internet casino treasured. In order your own home to start to be your own personal modern casino when you possessed like, taking your own establish is really a good plan.

コメントを残す

メールアドレスが公開されることはありません。 * が付いている欄は必須項目です