单个查询中的 Wikipedia API 和 SPARQL

2024-01-14

我需要搜索其中包含一些特定单词的维基百科页面全文。为了改善结果,我想将结果限制为描述实体的页面的实例一个特定的实体。

为了搜索全文,我可以使用 Wikipedia API,使用查询动作搜索生成器.

为了过滤给定实体的实例,我可以使用 Wikidata API 和 SPARQL 查询。

有没有办法在应用两个过滤器的单个查询中执行这两个操作?


Since 2017年6月 https://phabricator.wikimedia.org/T148245, it is possible https://www.mediawiki.org/wiki/Wikidata_Query_Service/User_Manual/MWAPI从 Wikidata SPARQL 调用 Wikimedia API:

SELECT ?wikidata_item ?wikipedia_title {
    SERVICE wikibase:mwapi {
      bd:serviceParam wikibase:endpoint "en.wikipedia.org" .
      bd:serviceParam wikibase:api "Generator" .
      bd:serviceParam mwapi:generator "search" .
      bd:serviceParam mwapi:gsrsearch "triplestore" .
      bd:serviceParam mwapi:gsrlimit "max" .
      ?wikidata_item wikibase:apiOutputItem mwapi:item . 
      ?wikipedia_title wikibase:apiOutput mwapi:title .
 }
  # hint:Prior hint:runFirst "true".
  ?wikidata_item wdt:P31 wd:Q3539533  .
  FILTER (?wikipedia_title != "Blazegraph")
}

Try it! https://query.wikidata.org/#SELECT%20%3Fwikidata_item%20%3Fwikipedia_title%20%7B%0A%20%20%20%20SERVICE%20wikibase%3Amwapi%20%7B%0A%20%20%20%20%20%20bd%3AserviceParam%20wikibase%3Aendpoint%20%22en.wikipedia.org%22%20.%0A%20%20%20%20%20%20bd%3AserviceParam%20wikibase%3Aapi%20%22Generator%22%20.%0A%20%20%20%20%20%20bd%3AserviceParam%20mwapi%3Agenerator%20%22search%22%20.%0A%20%20%20%20%20%20bd%3AserviceParam%20mwapi%3Agsrsearch%20%22triplestore%22%20.%0A%20%20%20%20%20%20bd%3AserviceParam%20mwapi%3Agsrlimit%20%22max%22%20.%0A%20%20%20%20%20%20%3Fwikidata_item%20wikibase%3AapiOutputItem%20mwapi%3Aitem%20.%20%0A%20%20%20%20%20%20%3Fwikipedia_title%20wikibase%3AapiOutput%20mwapi%3Atitle%20.%0A%20%7D%0A%20%23%20hint%3APrior%20hint%3ArunFirst%20%22true%22.%0A%20%20%3Fwikidata_item%20wdt%3AP31%20wd%3AQ3539533%20%20.%0A%20%20FILTER%20%28%3Fwikipedia_title%20%21%3D%20%22Blazegraph%22%29%0A%7D

本文内容由网友自发贡献,版权归原作者所有,本站不承担相应法律责任。如您发现有涉嫌抄袭侵权的内容,请联系:hwhale#tublm.com(使用前将#替换为@)

单个查询中的 Wikipedia API 和 SPARQL 的相关文章

  • 从 sparql 查询返回面向对象的 json

    如果我想在SPARQL中询问一些不同的属性A和B 其中有一个唯一的 A 并且每个 A 可能有多个 B 我得到的查询结果如下 A1 B1 A1 B2 A1 B3 A1 B4 A2 B5 我希望这个查询结果的外观更多是这样的形式 A1 B1 B
  • Fuseki 1.0.1 SPARQL 更新返回 404

    我正在尝试学习更新 Fuseki 中的数据 但当我尝试时出现 404 错误 我显然没有做正确的事情 也许这是我的 INSERT 命令 不过我已经尝试过很多了 我正在使用 sparql tpl 上基于 Web 的 SPARQL 界面 我可以让
  • 如何将 SPARQL 发布到 Virtuoso?

    我正在使用两种不同的HTTP POST公用事业 poster https addons mozilla org en US firefox addon poster 从 Firefox 以及Python requests http docs
  • 如何使用 SPARQL 查询生成适合特定节点类型或/和边类型的所有三元组?

    这是一个后续问题 如何使用SPARQL查询列出并统计图数据中不同类型的节点和边实体 https stackoverflow com questions 24187351 how to list and count the different
  • 带标签的维基数据 SPARQL 查询不起作用

    我不明白为什么通过这个查询我无法获得运动和流派标签 SELECT DISTINCT item itemLabel value inception creatorLabel image group concat genreLabel sepa
  • Sparql 查询永远运行

    我在耶拿执行 SPARQL 查询时遇到了困难 结果导致了我无法理解的行为 我正在尝试查询 Esco 本体 https ec europa eu esco download https ec europa eu esco download 我
  • GraphDB Free 8.8 Sparql INSERT 返回 400。不支持 INSERT?

    我正在使用 GraphDB Free 并尝试使用 sparql 将一些三元组插入到存储中 该查询看起来像一个简单的 INSERT Some Prefixes INSERT DATA subject predicate object 我使用
  • 列出来自 DBpedia 的国家

    尝试查询 DBpedia 以获取包含以下内容的所有国家 地区的列表dbo longName列出每个国家的财产和首都 但返回 0 个结果 看不出查询有什么问题 PREFIX dbo
  • 如何使用维基百科的 API 获取维基百科内容?

    我想获取维基百科文章的第一段 执行此操作的 API 查询是什么 请参阅本节中的MediaWiki API 文档 http www mediawiki org wiki API Properties revisions 2F rv 具体涉及获
  • 如何使用SPARQL计算有向图的最大度?

    我在两个单独的查询中计算了有向图中每个节点的入度和出度 SELECT s COUNT AS outdegree s p o GROUP BY s ORDER BY DESC outdegree SELECT o COUNT AS indeg
  • 三元组组合的递归 SPARQL 查询

    我使用onspy在Python中递归运行以下查询 SELECT c WHERE c rdfs subClassOf restriction restriction owl onProperty has part owl someValues
  • 从 RDF 节点拉出字符串

    在使用 Jena 的 SPARQL 查询时 我试图以更易读的格式获取数据 但是我不知道如何以正确的方式提取数据 就目前而言 输出是 http www w3 org TR 2003 PR owl guide 20031209 wine Sau
  • 在 Protege 中使用 SPARQL 推断数据

    我正在尝试推断 RDF 数据 假设我有这些三元组 RDF Turtle 是我使用 Protege 创建的 prefix owl
  • 使用 SPARQL 提取 dbpedia 实体的层次结构

    我正在尝试使用以下方法提取 DBpedia 资源的 Wikipedia 类别或 Yago 分类的层次结构SPARQL端点 http dbpedia org sparql 例如 我想以实体的分层形式找出所有可能的类别和类 例如 http db
  • 在SPARQL中使用LIMIT时如何获取结果总数?

    我有一个 SPARQL 查询 它返回结果LIMIT共 20 个 在此查询中 我还想知道结果总数 而无需运行查询两次 一次运行LIMIT和一个没有LIMIT 例如 运行查询时 可能的结果总数为 500 个 其中LIMIT它一次只显示 20 个
  • 提取给定节点的所有父节点

    我正在尝试使用以下命令提取每个给定 GO Id 节点 的所有父级EBI RDF sparql 端点 https www ebi ac uk rdf services sparql 我是根据this https stackoverflow c
  • 用于查找艺术家属性的 dbpedia SPARQL 查询

    我试图通过 DBPedia 和 SPARQL 查询语言获取有关艺术家的详细信息 但是 根据我的理解 如何获取某些信息似乎几乎是不可能的 我正在尝试找到一位艺术家并获取诸如他们的家乡之类的信息 我猜查询应该类似于 SELECT c WHERE
  • 根据 URI 前缀从 DBpedia SPARQL 查询中排除结果

    使用时如何排除一组概念DBpedia SPARQL 端点 http dbpedia org sparql 我使用以下基本查询来获取概念列表 SELECT DISTINCT concept WHERE x a concept LIMIT 10
  • MYSQL插入GB大小的巨大SQL文件

    我正在尝试创建 Wikipedia DB 副本 大约 50GB 但在处理最大的 SQL 文件时遇到问题 我使用 linux split 实用程序将 GB 大小的文件拆分为 300 MB 的块 例如 split d l 50 enwiki 2
  • 从导出的维基百科文章中检索中间语言链接?

    我曾经通过使用一些正则表达式解析导出来从导出的维基百科文章中检索中间语言链接 在第一阶段维基数据项目 https en wikipedia org wiki Wikipedia Wikidata这些链接已移至维基数据上的单独页面 例如文章厄

随机推荐