Skip to content

Instantly share code, notes, and snippets.

@lmn3x
Forked from crittermike/wget.sh
Created June 1, 2021 12:09
Show Gist options
  • Save lmn3x/a8a2aaf254548abb1d3ac8f8690125f2 to your computer and use it in GitHub Desktop.
Save lmn3x/a8a2aaf254548abb1d3ac8f8690125f2 to your computer and use it in GitHub Desktop.
Download an entire website with wget, along with assets.
# One liner
wget --recursive --page-requisites --adjust-extension --span-hosts --convert-links --restrict-file-names=windows --domains yoursite.com --no-parent yoursite.com
# Explained
wget \
--recursive \ # Download the whole site.
--page-requisites \ # Get all assets/elements (CSS/JS/images).
--adjust-extension \ # Save files with .html on the end.
--span-hosts \ # Include necessary assets from offsite as well.
--convert-links \ # Update links to still work in the static version.
--restrict-file-names=windows \ # Modify filenames to work in Windows as well.
--domains yoursite.com \ # Do not follow links outside this domain.
--no-parent \ # Don't follow links outside the directory you pass in.
yoursite.com/whatever/path # The URL to download
@lmn3x
Copy link
Author

lmn3x commented Dec 12, 2022

Aggregating this command with other blog posts on the internet, I ended up using

wget --mirror --no-clobber --page-requisites --adjust-extension --span-hosts --convert-links --restrict-file-names=windows --domains {{DOMAINS}} --no-parent {{URL}}

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment