(什么时候)以下内容可能实现?
通过单个查询/API 调用获取维基百科页面上的所有链接及其各自的维基数据 ID 的列表。
通过查询接收各个维基数据项的附加信息,例如属性值。
最佳答案
要获取所有维基百科页面链接,您必须使用Wikipedia API ,并获取您需要的所有维基数据项目属性 Wikidata API ,因此不可能创建一个对两个 API 都有两个请求的查询。但!你问题的第一部分已经是可能的。关于第二个......你没有说任何你需要从维基数据获取什么信息。
您可以获得所有维基百科页面链接的维基数据 ID 和许多其他信息,例如坐标、引用文献、内部和外部链接、图像、文本内容、贡献者、历史记录、页面权限、类别、模板等...为此,我们只能使用 Wikipedia API,因为我们的入口点是 Wikipedia 页面,加上 API 的生成器功能。
例如,这就是如何获取 Dolphin 上前 20 个跨维基链接的维基数据 ID、简短的介绍文本和主图像。维基百科页面:
https://en.wikipedia.org/w/api.php?action=query&generator=links&format=xml&redirects=1&titles=Dolphin&prop=pageprops|extracts|pageimages&gpllimit=20&ppprop=wikibase_item&exintro=1&exlimit=20&piprop=name&pilimit=20
主要query参数:
action=query&format=xml&redirects=1&titles=Dolphin
generator=links
- 获取所有页面 links (与gpllimit=20
一起使用)prop=pageprops|extracts|pageimages
- 从链接中获取什么
属性:
- pageprops - 获取维基数据ID(与
ppprop=wikibase_item
一起使用) - extracts - 从该页面获取第一行文本(与
exintro=1
和exlimit=20
配合使用) - pageimages - 获取主图像(与
piprop=name
和pilimit=20
配合使用)
用同样的方式可以得到列出的另一个信息here在参数 prop
中。
关于wikipedia - 如何获取维基百科页面的所有链接及其维基数据 ID?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/37093911/