Pythonにおけるwikipedia APIについて現役エンジニアが解説【初心者向け】

初心者向けにPythonにおけるwikipedia APIについて現役エンジニアが解説しています。wikipedia APIとはwikipediaのURLや記事の検索などをPythonで扱うことができるライブラリです。wikipediaライブラリのインストール方法や検索プログラムの作成方法について解説します。

TechAcademyマガジンは受講者数No.1のオンラインプログラミングスクールTechAcademy [テックアカデミー]が運営。初心者向けに解説した記事を公開中。現役エンジニアの方はこちらをご覧ください。

Pythonにおけるwikipedia APIについて、TechAcademyのメンター(現役エンジニア)が実際のコードを使用して初心者向けに解説します。

そもそもPythonについてよく分からないという方は、Pythonとは何なのか解説した記事を読むとさらに理解が深まります。

 

なお本記事は、TechAcademyのオンラインブートキャンプPython講座の内容をもとに紹介しています。

 

田島悠介

今回は、Pythonに関する内容だね!

大石ゆかり

どういう内容でしょうか?

田島悠介

Pythonにおけるwikipedia APIについて詳しく説明していくね!

大石ゆかり

お願いします!

 

目次

 

wikipedia APIとは

wikipedia APIとはwikipediaのデータをPythonで扱えるライブラリです。

主にwikipediaページに含まれる情報やURLを取得でき、記事の検索などもできます。
 

[PR] Pythonで挫折しない学習方法を動画で公開中

wikipediaライブラリのインストール方法

wikioedia ライブラリはpipを使用してインストールできます。

pipを使用してwikipediaをインストールする場合には下記コマンドを使用します。

pip install wikipedia

 

wikipedia APIを利用してwikipedia検索プログラムを作成してみよう

それでは早速、サンプルコードを参考にwikipedia APIを利用してwikipedia検索プログラムを作成してみましょう。
 

サンプルコード

import wikipedia

# キーワードを設定
keyword = "python"

# キーワードで検索
wikipedia.set_lang("ja")
search_response = wikipedia.search(keyword)

#検索結果を表示
print('キーワード:'+ str(keyword) + 'での検索結果は' + str(len(search_response)) + '件です。')
print(search_response)
#検索結果のページ内容を表示
page_data = wikipedia.page(search_response[0])
print(page_data.content)

 

実行結果

キーワード:Pythonでの検索結果は10件です。
['Python', 'ピュートーン', 'モンティ・パイソン', 'KML', 'タプル', 'Bazaar', 'Geany', 'Google App Engine', 'キャノピー', 'スクリプト言語']

**以下Pythonに関するwikipediaページ情報が出力されます。**

 

解説

ここでは、キーワードを指定てwikipedia検索結果と、結果の順位が最も高いページの情報を取得するコードを作成しました。

コード1行目では、wikipedia API をプログラムに読み込んでいます。コード3行目では、検索キーワードを変数にセットしています。

コード7-8行目では、検索キーワードを指定してweikipedia API を使用して、検索した結果を変数に記録しています。この場合は検索結果のページタイトルがリスト形式で返されます。

コード11-12行目では、検索結果の件数と、ページタイトルを出力しています。検索結果がリスト形式で返されていることが確認できます。

コード15-16行目では、検索結果の最も順位が高いものを指定し、ページの情報を取得したものを出力しています。

実行結果では取得した情報がそれぞれ出力されている事が確認できます。
 

まとめ

今回はPythonにおけるwikipedia APIの利用方法について紹介しました。

Pythonでは、今回のようにAPIを使用して既存のサービスを活用したアプリケーション開発も可能です。無償で公開されているAPIも多数あるので興味のある方は是非そちらも学習してみて下さい。
 

監修してくれたメンター

菅繕久(すがよしひこ)

現在はフリーランスのエンジニアをしていてプログラミング歴は8年目になります。

普段は Python、FileMaker等を使って様々な業務で活用できるIoTプロダクトRPAツールを作成しています。
開発実績としては、業務自動化ツール(在庫管理・発注・ファイル操作 etc)、電子カルテシステム、ロボット用プログラムなどがあります。
TechAcademyではPythonコースを担当しております。

 

大石ゆかり

内容分かりやすくて良かったです!

田島悠介

ゆかりちゃんも分からないことがあったら質問してね!

大石ゆかり

分かりました。ありがとうございます!

 

TechAcademyでは、初心者でも最短4週間でPythonを使った人工知能(AI)や機械学習の基礎を習得できるオンラインブートキャンプPython講座を開催しています。

挫折しない学習方法を知れる説明動画や、現役エンジニアとのビデオ通話とチャットサポート、学習用カリキュラムを体験できる無料体験も実施しているので、ぜひ参加してみてください。