【发布时间】:2010-02-22 11:21:57
【问题描述】:
背景
我想在我的 Cocoa 应用程序中访问 Chrome 和 Firefox 的缓存。我需要获取最近访问的页面的 HTML。 Safari 是小菜一碟 - 所有这些信息都可以在 SQLite 数据存储中获得,但在 Chrome 和 Firefox 中却不是。
问题
对于 Firefox,缓存位于 /Library/Caches/Firefox/Profiles/xxx.default/Cache 中,文件名为 _CACHE_001_ _CACHE_002_ _CACHE_003_ 和 _CACHE_MAP_
对于 Chrome,缓存位于 /Library/Caches/Google/Chrome/Default/Cache 中,文件名为 data_0 data_1 data_2 和 data_3
我的尝试
我能找到的唯一一篇文章阐明了is here 中这些缓存的格式。它推荐了一个缓存查看器工具,但没有解释如何以编程方式执行此操作。
问题
有什么方法可以重构 使用命令行工具获取此数据 还是 Cocoa 框架?或者是 水平太低了?
还有其他方法可以解决 我最近的网页的 HTML 不知道?
【问题讨论】:
-
这可能不是很有帮助,但由于 Firefox 和 Chromium 都是开源的,因此绝对可以解码它们使用的格式。
-
天啊。我不敢相信我没想到!这会很麻烦,但这是一个可行的最坏情况。感谢您指出我应该清楚的事情! :)
-
请记住,尽管 Safari 的缓存目前很容易读取,但您无法保证它在将来会保持相同的位置和格式。
-
是的,说得好,迈克。我现在要发布一个单独的 Stack Overflow 问题。
标签: cocoa macos firefox caching google-chrome