以编程方式确定MediaWiki映像的URL

时间:2010-11-30 09:10:38

标签: php url wiki mediawiki

我正在尝试使用PHP脚本从特定的MediaWiki页面(或只是特定的图像)下载图像。

我可以通过api运行查询,方法是检索以下URL中的页面

.../w/action=query&prop=images&titles=Abakanskiy

并获得回复

<?xml version="1.0"?>
<api>
  <query>
    <pages>
      <page pageid="260" ns="0" title="Abakanskiy">
        <images>
          <im ns="6" title="File:Abakanskiy.jpg" />
        </images>
      </page>
    </pages>
  </query>
</api>

到目前为止,非常好。

现在,无论我对查询做了什么,我都没有想出如何构建或检索图像的实际URL - 在这种情况下,它是

.../w/images/3/38/Abakanskiy.jpg

我错过了一些明显的东西吗?

我意识到存在一个天真的解决方案 - 获取包含图像的页面源,为标记解析它,然后从指定的URL获取图像 - 但是,如果可能的话,我宁愿使用API

任何帮助将不胜感激!

1 个答案:

答案 0 :(得分:7)

获得图像页面的名称后,即可执行以下操作:

action=query&prop=imageinfo&iiprop=url&titles=File:Foo.jpg|File:Bar.jpg

获取实际图片的网址。