【问题标题】:LinqToWiki C# Cannot retrieve imageinfo in WikipediaLinqToWiki C#无法在维基百科中检索图像信息
【发布时间】:2013-09-19 13:39:00
【问题描述】:

我正在使用 C# 的 LinqToWiki 库查询 Wikipedia。 特别是我想检索指向 wiki 页面 File:Cinnamomum_verum.jpg 的完整图像 url

使用官方 Media Wiki API 请求是:http://it.wikipedia.org/w/api.php?action=query&prop=imageinfo&iiprop=url&titles=File:Cinnamomum_verum.jpg

正如您在浏览器中输入所见,xml 响应包含 imageinfo 结构,尤其是 url。

我无法使用 LinqToWiki 检索此信息。

我使用以下代码:

var c = wiki.CreateTitlesSource("File:Cinnamomum_verum.jpg");

var source = pages
                .Select(
                    p =>
                    PageResult.Create(
                        p.info,
                        p.imageinfo()
                            .Select(i => new { i.comment }).ToEnumerable())
                ).ToEnumerable();

            foreach (var item in list)
            {
                foreach (var item2 in item.Data)
                {
                    //retrieve all urls detected
                }
            }

第一个 foreach 语句正确地检索了一个元素(页面),但内部的一个没有返回。 有人遇到同样的问题吗?我错过了什么吗?

【问题讨论】:

    标签: c# wikipedia-api linq-to-wiki


    【解决方案1】:

    您没有遗漏任何东西,我只是没想到实际上不存在的页面(在您使用的 wiki 上)可能有有用的数据。我会尽快解决此问题,但作为临时解决方法,您可以直接查询 http://commons.wikimedia.org 以获取那里的图像。

    编辑:我已经更新了 LinqToWiki,新版本应该能正确处理 imageinfo。

    【讨论】:

      猜你喜欢
      • 2016-07-27
      • 1970-01-01
      • 1970-01-01
      • 2020-07-27
      • 1970-01-01
      • 2020-07-16
      • 2011-12-26
      • 1970-01-01
      • 1970-01-01
      相关资源
      最近更新 更多