it-swarm.dev

Mencari Wikipedia menggunakan API

Saya ingin mencari Wikipedia menggunakan tindakan query. Saya menggunakan url ini:

http://en.wikipedia.org/w/api.php?action=query&format=json&list=search&srsearch=Apple

Itu bekerja tetapi saya ingin masuk ke hasil pencarian pertama. Bagaimana saya bisa melakukan itu?

Catatan: Url itu berfungsi dengan baik ketika hanya ada satu hasil .. Saya hanya perlu judul dan deskripsi singkat.

24
Muhammad Ashraf

Saya tidak berpikir Anda bisa melakukan keduanya dalam satu permintaan.

1. Untuk mendapatkan hasil pertama, gunakan API OpenSearch .

https://en.wikipedia.org/w/api.php?action=opensearch&search=zyz&limit=1&namespace=0&format=jsonfm

https://en.wikipedia.org/w/api.php
?action=opensearch
&search=zyz          # search query
&limit=1             # return only the first result
&namespace=0         # search only articles, ignoring Talk, Mediawiki, etc.
&format=json         # jsonfm prints the JSON in HTML for debugging.

Ini akan mengembalikan:

[
    "Zyz",
    [
        "Zyzomys"
    ],
    [
        ""
    ],
    [
        "https://en.wikipedia.org/wiki/Zyzomys"
    ]
]

2. Anda sekarang memiliki nama artikel dari hasil pencarian pertama. Untuk mendapatkan paragram pertama artikel (atau deskripsi, seperti Anda menyebutnya), lihat jawaban saya di sini: https://stackoverflow.com/a/19781754/908703

44
octosquidopus

sebenarnya api wikipedia json hanya berfungsi dengan kueri yang tepat, jadi saya sarankan untuk menggunakan pencarian wikipedia dan merayapi artikel yang sebenarnya dan menguraikannya dengan BeautifulSoup

https://en.wikipedia.org/w/index.php?search=QUERY&title=Special:Search&fulltext=Search

dan juga ada panggilan modul wikipedia melakukan ini untuk Anda

0
Jeeva