Mac OS X utility to un-archive .webarchive files (like when saving from Safari)
Don't want to compile it yourself? You can purchase the app directly at therohans.com/webarchiveextractor/.
This project was forked from Vitaly Davidenko's repo on sourceforge.
You can use the utility graphically by launching WebArchiveExtractor.app directly. See interface here.
You can also run the same executable from from the command line:
./WebArchiveExtractor.app/Contents/MacOS/WebArchiveExtractorRunning with no arguments will just launch the GUI.
This repo includes a Claude Code skill that lets you extract .webarchive files by just asking Claude naturally (e.g. "extract this webarchive file").
Copy the skill into your Claude Code skills directory:
mkdir -p ~/.claude/skills/webarchive
cp skills/webarchive/SKILL.md ~/.claude/skills/webarchive/SKILL.mdOnce installed, Claude Code will recognize requests to extract .webarchive files and use WebArchiveExtractor automatically. The skill requires the app to be installed at /Applications/WebArchiveExtractor.app (see Build below).
Note: Due to macOS app sandboxing, the only reliable output location when using the CLI via Claude Code is the user's
~/Downloadsfolder. If extraction to another directory fails or produces no output, use~/Downloadsas the destination.
Extract contents of website.webarchive to a directory named website relative to CWD:
WebArchiveExtractor website.webarchiveWebArchiveExtractor -i website.webarchiveDefine explicit output directory:
WebArchiveExtractor website.webarchive -o outYou should be able to automatically build and sign a release for local execution by running this command in the root of the project, even if you are not an Apple developer (assuming you've got the Xcode CLI tools):
Update: You need to do two things first:
- Step 1. Download Xcode from the App Store (Note: You don't have to run it, if you do it'll use up a bunch of disk space)
- Step 2. Run
xcodebuild -runFirstLaunchin the Terminal
xcodebuild -project WebArchiveExtractor.xcodeprojIf the command fails, you'll need to open the project in Xcode to investigate.
The resulting WebArchiveExtractor.app should be in build/Release. To install, you can just drag it to your Applications directory.
Keep in mind that the executable is inside the
.appbundle. To reference the command in your shell, you can do something like either of the following:
Add to PATH:
# Add this to your shell's rc file:
export PATH="$PATH:/Applications/WebArchiveExtractor.app/Contents/MacOS/"Symlink to a location already in PATH:
ln -s /Applications/WebArchiveExtractor.app/Contents/MacOS/WebArchiveExtractor ~/.local/bin/WebArchiveExtractor