2

我正在使用mediawiki opensearch api for wikipedia opensearch like

http://en.wikipedia.org/w/api.php?action=opensearch&search=a&limit=10&namespace=0&format=jsonfm

例如:对于返回的查询字符串“a”

[
"a",
[
    "Animal",
    "Association football",
    "Australia",
    "Allmusic",
    "African American (U.S. Census)",
    "Arthropod",
    "Album",
    "Actor",
    "Austria",
    "American football"
]
    ]

有没有办法从获取的结果中删除所有位置,如上述情况`

[
    "Australia",
    "Austria"
]

是否有任何相关参数要添加到查询字符串以避免搜索位置?,谢谢

4

1 回答 1

6

不,这是不可能的。查看您自己链接的文档;-)

opensearch api 是一个快速响应的 api,用于自动完成输入等。因此,除了命名空间之外,您将没有过滤器选项。

如果您想过滤它们,您应该构建自己的数据库,将位置与“普通”文章分开,并为该数据库创建一个 API。然后,您也将控制“位置”的定义。

如果您想提取有关搜索文章的元数据,您可以查看 (query-) search api。例如,您可以将该列表用作生成器并获取找到的文章的类别(这可能有助于过滤位置)。或者获取嵌入式模板并查找 {{coord}}。

于 2012-04-10T15:11:57.787 回答