你好,我正在使用 Curl 从维基百科获取信息,我只想接收有关主要图像的信息,我不想接收一篇文章的所有图像.. 例如.. 如果我想获取有关英语语言 (http://en.wikipedia.org/wiki/English_language) 的所有图像的信息,我应该访问此 URL: http://en.wikipedia.org/w/api.php?action=query&titles=English_Language&prop=images 但我收到了人们说英语的国家的国旗 XML:
<?xml version="1.0"?> <api> <query>
<normalized>
<n from="English_language" to="English language" />
</normalized>
<pages>
<page pageid="8569916" ns="0" title="English language">
<images>
<im ns="6" title="File:Anglospeak(800px)Countries.png" />
<im ns="6" title="File:Anglospeak.svg" />
<im ns="6" title="File:Circle frame.svg" />
<im ns="6" title="File:Commons-logo.svg" />
<im ns="6" title="File:Flag of Argentina.svg" />
<im ns="6" title="File:Flag of Aruba.svg" />
<im ns="6" title="File:Flag of Australia.svg" />
<im ns="6" title="File:Flag of Bolivia.svg" />
<im ns="6" title="File:Flag of Brazil.svg" />
<im ns="6" title="File:Flag of Canada.svg" />
我只想要有关主图像的信息。
最佳答案
有消息了! (自 2014 年起)
一个新的扩展,PageImages , 可用并且已经安装在维基媒体 wiki 上。
而不是 prop=images
, 使用 prop=pageimages
,你会得到一个 pageimage
属性和 <thumbnail>
每个 <page>
的子节点元素。
不可否认,它不能保证提供最佳结果,但在您的示例 ( English Language ) 中它是 works well并且只生成地理分布图,而不是所有标志。
另外,OpenSearch API确实返回 <image>
在它的 xml 表示中,但是这个 API 不能用于列表并且不能与查询 API 结合使用。
关于php - 如何从 MediaWiki API 获取主体图像?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/12147886/