Skip to content

A command line tool that allows you to more easily view and obtain the contents of a web browser or web plugin's HTTP cache that's stored on disk.

License

Notifications You must be signed in to change notification settings

joaohenggeler/web-cache-exporter

Repository files navigation

Web Cache Exporter

⚠️ This tool is currently being rewritten from scratch. See the progress so far in the overhaul branch. ⚠️

A command line tool that allows you to more easily view and obtain the contents of a web browser or web plugin's HTTP cache that's stored on disk. It runs on Windows 98, ME, 2000, XP, Vista, 7, 8.1, and 10, and supports the following cache formats:

  • The WinINet cache - Internet Explorer 4 to 11.
  • The Mozilla cache - Mozilla Firefox, Netscape Navigator 6.1 to 9, etc.
  • The Flash Player's shared library cache and temporary Flash videos.
  • The Shockwave Player's cache, including Xtras.
  • The Java Plugin's cache - Java 1.3 to 8.
  • The Unity Web Player's cache.

This tool was developed to aid the recovery and preservation of lost web media (games, animations, virtual worlds, etc) whose files might exist in old computers where they were viewed or played when they were still available.

Here's a list of browser games whose assets were found by searching the web cache.

A web game being recovered from Internet Explorer's cache.

Features

  • Runs natively on Windows 98, ME, 2000, XP, Vista, 7, 8.1, and 10.

  • Copies each cached file using their original website's directory structure.

  • Creates CSV files that list every cached file along with additional information (URL, HTTP headers, SHA-256 hash, etc).

  • Finds the default and user-defined cache locations of various web browsers.

  • Supports labelling cached files based on their file signatures, MIME types, file extensions, and URLs. Files can be grouped and filtered by their format or domain.

  • Supports exporting the cache from external locations (e.g. from the contents of an old computer that won't boot up anymore).

  • Decompresses cached files based on the Content Encoding in the HTTP headers. Supported formats: Gzip, Zlib, Raw DEFLATE, Brotli, Compress.

Screenshots

The Web Cache Exporter being executed in the command line.

A CSV file created by the Web Cache Exporter.

The website directory structure created by the Web Cache Exporter.

Some cached files exported by the Web Cache Exporter.

Command Line Arguments

See the help file to learn how to use this application.

Group Files

See the "About Groups" help file to learn how the tool labels cached files based on their file signatures, MIME types, file extensions, and URLs. For example, here's the Plugin group file that matches files used by various web plugins (Flash, Shockwave, Java, etc).

External Locations

See the "About External Locations" help file to learn how the tool can export the cache from the contents of an old computer that won't boot up anymore.

Building

See the building instructions to learn how to compile this application.

Tools And Resources

This section lists some useful tools and resources that were used throughout this application's development. This includes learning how to process certain cache formats, validating the application's output, extracting assets from plugin-specific file formats, and other general purpose tools.

Internet Explorer

Mozilla Firefox And Friends

Flash Player

Shockwave Player

  • TOMYSSHADOW's Movie Restorer Xtra allows you to open Shockwave movies in Director. This is useful when trying to find out the name of a Shockwave game (e.g. by looking at the game's menu screen) since the plugin's cache does not store the original filename or URL.

  • Valentin's Unpack tool allows you to extract Xtras from Xtra-Packages (.W32 files). This is useful for finding out which Xtras were stored in the plugin's cache.

Unity Web Player

Other

Special Thanks

  • Special thanks to Computerdude77 for his general assistance and for helping me test this tool in older Windows versions.
  • Special thanks to TOMYSSHADOW for his extensive Director and Shockwave knowledge.