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

Vla*_*lav 2 php url wiki mediawiki

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

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

.../w/action=query&prop=images&titles=Abakanskiy
Run Code Online (Sandbox Code Playgroud)

并得到回应

<?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>
Run Code Online (Sandbox Code Playgroud)

到现在为止还挺好.

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

.../w/images/3/38/Abakanskiy.jpg
Run Code Online (Sandbox Code Playgroud)

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

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

任何帮助,将不胜感激!

Ang*_*gus 7

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

action=query&prop=imageinfo&iiprop=url&titles=File:Foo.jpg|File:Bar.jpg
Run Code Online (Sandbox Code Playgroud)

获取实际图像的URL.