Database Freebase:哪个数据转储文件包含;imdb_id";?
我运行IMDbAPI.com,一直在使用Bing的搜索API从标题搜索中查找IMDb ID。Bing目前正在将其API改为Azure Marketplace(8月1日),不再免费提供。我开始使用Freebase测试我的API来解析这些ID,并在头8小时内达到10万个限制(我的网站目前每天收到大约300万个请求,但标题搜索只有200-30万个) 这正是他们提供数据转储文件的原因 我下载了电影文件夹中的大部分文件,但找不到它们存储“/authority/imdb/title”imdb id名称空间数据的位置 这就是我当前访问ID的方式Database Freebase:哪个数据转储文件包含;imdb_id";?,database,api,freebase,mql,imdb,Database,Api,Freebase,Mql,Imdb,我运行IMDbAPI.com,一直在使用Bing的搜索API从标题搜索中查找IMDb ID。Bing目前正在将其API改为Azure Marketplace(8月1日),不再免费提供。我开始使用Freebase测试我的API来解析这些ID,并在头8小时内达到10万个限制(我的网站目前每天收到大约300万个请求,但标题搜索只有200-30万个) 这正是他们提供数据转储文件的原因 我下载了电影文件夹中的大部分文件,但找不到它们存储“/authority/imdb/title”imdb id名称空间数
有人知道哪个文件包含此信息吗?以及如何从电影标题/id链接回它?imdb\u id属性由
/authority/imdb/title
命名空间中的一个键支持,因此您要查找以下行:
/m/015gxt /type/object/key /authority/imdb/title tt0065126
在文件中
这是一个4GB的文件,所以请准备好等待下载。请注意,所有内容都是由MID键控的,所以如果数据库中没有MID,则首先需要弄清楚这一点
使用MQL而不是数据转储的等效查询是
编辑:另外,我很确定浏览目录中的文件正在消失,所以即使你能在那里找到信息,我也不会依赖它们。前面的答案很好,只是这样一个查询的更快捷版本可能是:
query = [{
'type': '/film/film',
'name': 'prometheus',
'imdb_id': null,
...
}];
没有提到MQL请求的其余部分,因为它与前面提到的没有区别。希望这能有所帮助。我试图避免使用4gig(33gig解压)文件,但我还是下载了它,并花了3个小时试图找到任何东西来打开/解析它。我最终使用了微软的LogParser 2.2,它工作得很好!LogParser.exe-i:TSV“从C:\freebase.TSV中选择Col1,Col4到C:\imdbList.csv,其中Col3类似于“%imdb/title%”-o:csv-headers:OFF-iHeaderFile:“C:\header.txt”,因此现在我有一个3mb的csv文件,其中包含所有freebase ID和imdb ID。接下来,我需要从“Film.TSV”中获取“title”、“发行年份”和“别名”然后我可以在SQL中加入数据。。。最后可以搜索:)但我依赖于浏览文件夹“Films.tsv”中的额外文件。这些文件很快就会消失吗?处理压缩文件可能更快(当然磁盘空间更少),所以我不会解压缩它。任何Linux系统(或Windows上的Cygwin)都可以轻松地处理这个问题,而无需下载奇怪的专有实用程序。等效的命令是bzgrep“authority/imdb/title”freebase-datadump-fourples.tsv.bz2 | cut-f 1,4>imdbList.csv,即使在笔记本电脑上,它也可以在不到20分钟的时间内解压和搜索4GB文件并输出142K对ID。以下是我能找到的最接近tsv转储停用的公告: