当前位置: 首页 > 知识库问答 >
问题:

Wikipedia api全文搜索以返回包含标题、片段和图像的文章

戚俊健
2023-03-14

我一直在寻找一种基于搜索字符串查询wikipedia api的方法,该搜索字符串包含以下属性的文章列表:

  • 标题
  • 片段/描述
  • 与文章相关的一个或多个图像。

我还必须使用jsonp进行查询。

我尝试过使用list=search参数

http://en.wikipedia.org/w/api.php?action=query

但它似乎忽略了prop=images,我还尝试了使用prop=imageinfo和prop=pageimages的变体。但是它们都给了我与使用list=search相同的结果。

我也试过action=opensearch

http://en.wikipedia.org/w/api.php?action=opensearch

当我设置format=xml时,它给出了我想要的东西,但是当使用format=json时,返回了一个简单的页面标题数组,因此由于jsonp要求而失败。

还有其他方法可以做到这一点吗?我真的很想在一个单一的请求解决这个问题,而不是提出第一个搜索请求,然后第二个请求的图像使用标题=x|y|z

共有2个答案

阎英朗
2023-03-14

我尝试使用list=search参数,但它似乎忽略了prop=images

如果要检索任何属性,需要指定要获取这些属性的页面列表;e、 g.使用titles=pageid=revids=参数。您没有发送任何,因此您没有得到prop=images的结果。

如果您使用了api.php?action=query

但是,您也可以使用列表查询为属性查询生成的集合,使用列表模块作为生成器。查询看起来像api.php?action=query

使用两个查询可能是最好的方法。顺便说一句,我建议使用pageimages属性,它可能会给你最好的结果。

贲绪
2023-03-14

正如Bergi所建议的,使用发电机是解决问题的方法。具体来说,我会做什么:

  • 使用list=search作为生成器,获取文章列表
  • 使用prop=pageimages获取每篇文章的代表性图像
  • 使用prop=extracts获取每篇文章的描述

整个查询可能如下所示:

http://en.wikipedia.org/w/api.php?format=json

 类似资料:
  • 我们想建立一个基于维基百科公共图像数据库的图像搜索。我曾尝试过不同的请求格式,但似乎没有一种解决方案能够完全满足我们的需求。 我们想要达到的目标: 用户搜索f.e.“爱因斯坦” 我们向他们展示了“在维基百科上找到的808项爱因斯坦研究结果” 向他们显示前10个结果并允许分页 我试过: 返回总计结果(1842) 结果如下: 但此响应缺少可下载的URL。例如,“文件:Albert Einstein H

  • 问题内容: 在PHP中,如何从包含的脚本返回到包含它的脚本? IE浏览器: 1-主脚本2-应用程序3-包含 基本上,我想从3返回2,return()不起作用。 代码2-应用 问题答案: includeme.php: main.php: 也给出相同的结果 这是PHP鲜为人知的功能之一,但是对于设置非常简单的配置文件来说可能会很好。

  • 回顾 在前面的章节(分页),我们已经加强了数据库查询,因此能够在页面上获取各种查询。 今天,我们会继续探讨数据库的话题,只是领域不同。所有存储内容的应用程序必须提供搜索能力。 许多其它类型的网站可能使用了谷歌、必应等索引所有的内容并且提供查询结果。这个对于大多数静态页面的网站,像论坛,是很好用。我们应用程序 microblog 的基本单元是用户短小的 blog,不是整个页面。我们希望搜索结果是动态

  • 问题内容: 我的目标是将MSSQL全文功能与HQL一起使用。在哪种情况下,我编写了一个特定的SQLFunction,将我的“全文”函数映射到contains函数。 但是,问题在于,在HQL中(似乎)我必须明确使用返回类型,MSSQL Contains函数不使用或不接受该返回类型。 这就是它在MSSQL中的工作方式: 这是我在HQL中使用它的想法: 这不起作用,因为HQL需要返回类型。例如,这将在H

  • 我已经成功实现了Twitter搜索api,并且正在以如下所示的方式检索数据:https://developer.twitter.com/en/docs/tweets/search/api-reference/get-search-tweets 问题是,对于包含上传图像的tweet,我的JSON数据中没有这些图像url。我确实看到了被引用或重新发布的推文的媒体URL,但从未看到过原始推文本身的URL

  • 问题内容: 我正在将所有站点代码从使用mysql_ *函数转换为PDO。对于我的需求,PDO上的PHP文档尚不清楚。它为您提供了要使用的功能,但没有详细介绍它们在不同情况下的功能。 基本上,我有一个mysql全文搜索: 实际的语句要长得多,但这基本上就是它的作用。 我的问题是,如何将其纳入PDO? 我知道您不是要在位置标记周围使用引号,那么您是否将它们放在AGAINST()函数中?我包括他们吗?如