1

下面是一个使用 api.freebase.com 的旧 mqlread 查询示例,它返回了一些结果:

https://api.freebase.com/api/service/mqlread?queries={"q0":{"query":{"/common/topic/article":[{"id":null}],"name":"Ethanol","type":"/medicine/drug"}}}

然而,使用新的 Google API (www.googleapis.com) 这个查询返回一个空的结果对象:

https://www.googleapis.com/freebase/v1/mqlread?query=[{"/common/topic/article":[{"id":null}],"name":"Ethanol 1","type":"/medicine/drug"}]

没有任何关于将应用程序迁移到新 API 的文档,因为我认为它应该非常简单。我在这里遗漏了一些明显的东西吗?

4

2 回答 2

4

更改您正在查找的主题的名称是否算作“显而易见的事情”?在您的旧查询中是“乙醇”,在新查询中是“乙醇 1”(不存在)。

顺便说一句,BLOB API 还没有被转移到新的 API,所以如果你想使用你正在获取的文章 ID,你需要使用新的 Text API。

这是更正后的 URL 和生成的文本 API 调用

https://www.googleapis.com/freebase/v1/mqlread?query=[{%22/common/topic/article%22:[{%22id%22:null}],%22name%22:%22Ethanol%22,%22type%22:%22/medicine/drug%22}]&indent=1
https://www.googleapis.com/freebase/v1/text/m/02qw8

编辑:ps这里的风还有一个变化,虽然它还没有完全正式化http://markmail.org/message/tjfmhbb3thd5aqrt

于 2012-07-23T16:22:05.843 回答
1

http://wiki.freebase.com/wiki/Freebase_API告诉我们旧版本已被弃用。2012 年 10 月 30 日应该是最后一个日期..它在日期之前就停止工作了..

我尝试了以下查询以查看以 E 开头的所有内容。我找不到您要查找的实体。查询是正确的,可能是实体不再在该域中。

[{
  "/common/topic/article": [{
    "id": null
  }],
  "name" :[]
  "name~=": "E*",
  "type": "/medicine/drug"
}​]​
于 2012-07-23T15:13:49.040 回答