Skip to content

robrohan/WebArchiveExtractor

Folders and files

NameName
Last commit message
Last commit date

Latest commit

 

History

49 Commits
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 

Repository files navigation

WebArchiveExtractor

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.

Usage

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/WebArchiveExtractor

Running with no arguments will just launch the GUI.

Claude Code Skill

This repo includes a Claude Code skill that lets you extract .webarchive files by just asking Claude naturally (e.g. "extract this webarchive file").

Claude Example

Installing the Skill

Copy the skill into your Claude Code skills directory:

mkdir -p ~/.claude/skills/webarchive
cp skills/webarchive/SKILL.md ~/.claude/skills/webarchive/SKILL.md

Once 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 ~/Downloads folder. If extraction to another directory fails or produces no output, use ~/Downloads as the destination.

CLI Usage


Extract contents of website.webarchive to a directory named website relative to CWD:

WebArchiveExtractor website.webarchive
WebArchiveExtractor -i website.webarchive

Define explicit output directory:

WebArchiveExtractor website.webarchive -o out

Build

You 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 -runFirstLaunch in the Terminal
xcodebuild -project WebArchiveExtractor.xcodeproj

If 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 .app bundle. 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

About

Mac OS X utility to un-archive .webarchive files (like when saving from Safari)

Resources

License

Stars

Watchers

Forks

Sponsor this project

Contributors