ウィキペディアCLIの作成方法

DDD
DDDオリジナル
2025-01-25 00:13:09999ブラウズ

How to Create a Wikipedia CLI

Python と Wikipedia API を使用して Wikipedia コマンド ライン ツールを構築する

Wikipedia コマンド ライン インターフェイス (CLI) ツールの作成は、Python のシンプルさと Wikipedia の膨大な知識ベースを組み合わせた、非常に充実したプロジェクトでした。このチュートリアルでは、API を使用して Wikipedia から情報を取得する CLI ツールを構築する手順を段階的に説明します。


前提条件

始める前に、以下のものがあることを確認してください:

  • Python 3.7 以降がシステムにインストールされている。
  • Python の基本的な知識と API の使用経験。
  • Wikipedia API にアクセスするためのインターネット接続。

ステップ 1: Wikipedia API を理解する

Wikipedia は、https://www.php.cn/link/27bf6226213cf288dfbf62ffc02bad4f で RESTful API を提供しています。この API を使用すると、開発者は Wikipedia にコンテンツやメタデータなどを問い合わせることができます。使用する主なエンドポイントは次のとおりです:

  • action=query: Wikipedia から一般的なコンテンツを取得します。
  • list=search: キーワードで記事を検索します。
  • prop=extracts: 記事の要約を取得します。

すべての API リクエストのベース URL は次のとおりです:

<code>https://www.php.cn/link/27bf6226213cf288dfbf62ffc02bad4f</code>

ステップ 2: Python 環境をセットアップする

まず Python 仮想環境を作成し、必要なライブラリをインストールします。 requests を使用して HTTP リクエストを作成し、argparse を使用して CLI パラメーターを処理します。

<code># 创建虚拟环境
python -m venv wikipedia-cli-env

# 激活环境
# 在Windows上:
wikipedia-cli-env\Scripts\activate
# 在Mac/Linux上:
source wikipedia-cli-env/bin/activate

# 安装依赖项
pip install requests argparse</code>

ステップ 3: CLI 機能を計画する

私たちの CLI ツールには次の機能が含まれます:

  1. Wikipedia の記事を検索 : ユーザーはキーワードで記事を検索できます。
  2. 記事の概要を取得: 特定の記事の短い概要を取得します。
  3. CLI ヘルプの表示: 使用手順を表示します。

ステップ 4: CLI ツールを実装する

以下は CLI ツールの Python コードです:

<code class="language-python">import argparse
import requests

# 定义维基百科API的基本URL
WIKIPEDIA_API_URL = "https://www.php.cn/link/27bf6226213cf288dfbf62ffc02bad4f"

def search_articles(query):
    """搜索与查询匹配的维基百科文章。"""
    params = {
        'action': 'query',
        'list': 'search',
        'srsearch': query,
        'format': 'json',
    }
    response = requests.get(WIKIPEDIA_API_URL, params=params)
    response.raise_for_status()  # 对错误的响应引发错误
    data = response.json()

    if 'query' in data:
        return data['query']['search']
    else:
        return []

def get_article_summary(title):
    """获取维基百科文章的摘要。"""
    params = {
        'action': 'query',
        'prop': 'extracts',
        'exintro': True,
        'titles': title,
        'format': 'json',
    }
    response = requests.get(WIKIPEDIA_API_URL, params=params)
    response.raise_for_status()
    data = response.json()

    pages = data.get('query', {}).get('pages', {})
    for page_id, page in pages.items():
        if 'extract' in page:
            return page['extract']
    return "No summary available."

def main():
    parser = argparse.ArgumentParser(description="一个与维基百科交互的CLI工具。")
    subparsers = parser.add_subparsers(dest="command")

    # 子命令:search
    search_parser = subparsers.add_parser("search", help="在维基百科上搜索文章。")
    search_parser.add_argument("query", help="搜索查询。")

    # 子命令:summary
    summary_parser = subparsers.add_parser("summary", help="获取特定维基百科文章的摘要。")
    summary_parser.add_argument("title", help="维基百科文章的标题。")

    args = parser.parse_args()

    if args.command == "search":
        results = search_articles(args.query)
        if results:
            print("搜索结果:")
            for result in results:
                print(f"- {result['title']}: {result['snippet']}")
        else:
            print("未找到结果。")

    elif args.command == "summary":
        summary = get_article_summary(args.title)
        print(summary)

    else:
        parser.print_help()

if __name__ == "__main__":
    main()</code>

ステップ 5: CLI ツールをテストする

スクリプトを wikipedia_cli.py として保存します。これで、ターミナルからツールを実行できるようになります:

  1. 記事検索:
<code>python wikipedia_cli.py search "Python programming"</code>
  1. 記事の概要を取得:
<code>python wikipedia_cli.py summary "Python (programming language)"</code>

ステップ 6: ツールを強化する

ツールをより強力で使いやすくするには、次の追加を検討してください:

  1. エラー処理:APIリクエストに障害のある詳細なエラーメッセージを提供します。
  2. フォーマット
  3. などのライブラリを使用して、より美しい出力を取得します。 richキャッシュ
  4. :キャッシュを達成して、繰り返し照会されたAPI呼び出しを繰り返さないようにします。
  5. 追加関数:関連する記事、カテゴリ、または画像を取得するためのサポートを追加します。
  6. 結論
  7. PythonとそのAPIを使用してWikipedia CLIツールを構築しました!このツールは、他のアプリケーションに統合したり、GUIバージョンの作成など、より高度なプロジェクトの優れた出発点として使用できます。幸せなコードをお祈りします!

以上がウィキペディアCLIの作成方法の詳細内容です。詳細については、PHP 中国語 Web サイトの他の関連記事を参照してください。

声明:
この記事の内容はネチズンが自主的に寄稿したものであり、著作権は原著者に帰属します。このサイトは、それに相当する法的責任を負いません。盗作または侵害の疑いのあるコンテンツを見つけた場合は、admin@php.cn までご連絡ください。