首页 > 解决方案 > 如何从 Internet 档案中检索收藏项目

问题描述

是否有 api 来检索特定集合(即子集合)的项目?

示例:集合的 HTMLmovies可以从 https://archive.org/details/movies检索,JSON/meta 从https://archive.org/metadata/movies/检索。然而,JSON 有效负载没有引用集合的子项(即子集合,例如“ Arts & Music”、“ Community videos”等)。

我正在尝试围绕互联网存档 API 构建一个包装器。API 信息非常稀疏[0][1][2] 且不完整。

注意:如果您的声誉高于 1500,请创建一个“internet-archive”标签

[0] http://blog.archive.org/2011/03/31/how-archive-org-items-are-structured/ [1] http://blog.archive.org/developers/

[2] https://archive.org/services/docs/api/index.html

标签: web-crawler

解决方案


写完这个回复后,我意识到这并不是你问题的真正答案,因为它不返回子集合,而是返回所有项目。我稍微编辑了我的答案以反映这一点,并将其留作将来参考。


我很难仅列出集合的所有项目 - 我尝试使用 Simple Lists API,但与文档library_of_atlantis中的示例不同,它不会为我感兴趣的另一个集合返回任何结果。

最终,我得到了 IA 团队的有用回复,建议进行高级搜索查询,例如:https ://archive.org/advancedsearch.php?q=collection:movies&fl[]=identifier&rows=100&page=1&output=json 。

可能有更好的方法来查找集合的所有子集合movies,但是如果您将fl[]=collection参数添加到查询中,它将返回每个项目所在的所有集合的列表。也许您可以收集集合名称从那里?

至于为什么 Simple Lists API 不起作用:显然并非所有集合都由 simplelist 填充(而*_simplelists.sqlite https://archive.org/download/library_of_atlantis的存在似乎表明集合确实使用 simplelist)。


推荐阅读