【发布时间】:2016-10-20 22:46:04
【问题描述】:
我一直在尝试获取可能的结果列表(与在 Wikipedia 中执行搜索时会得到的结果相同)和文章的小摘要,通常是第一段。
到目前为止,我能得到的只是标题列表:
或单个页面的摘要:
是否可以将这两个查询组合成类似于此的形式
或者我是否必须迭代第一个查询的所有结果,然后获取每个查询的提取?
【问题讨论】:
我一直在尝试获取可能的结果列表(与在 Wikipedia 中执行搜索时会得到的结果相同)和文章的小摘要,通常是第一段。
到目前为止,我能得到的只是标题列表:
或单个页面的摘要:
是否可以将这两个查询组合成类似于此的形式
或者我是否必须迭代第一个查询的所有结果,然后获取每个查询的提取?
【问题讨论】:
您可以使用generator parameter 组合来自两个或多个查询的结果。所以这个想法是generate 一个search 结果列表(您的第一个查询),包括每个结果的extracts 属性(您的第二个查询):
action=query&generator=search&prop=extracts
然后我们需要为生成器添加一些参数(它们都以“g”为前缀)
gsrsearch=Albert%20Einstein&gsrlimit=20
所有查询属性的参数(在我们的例子中仅用于提取):
exintro=1&explaintext=1&exchars=250&exlimit=20
最终查询将是:
https://en.wikipedia.org/w/api.php?action=query&origin=*&generator=search&prop=extracts&gsrsearch=Albert%20Einstein&gsrlimit=20&exintro=1&explaintext=1&exchars=350&exlimit=20
【讨论】:
prop=categories|extracts|images|...