I wanted to download a webpage along with it's assets and scripts, I tried using Chrome's Save as... option but it wasn't working as expected.
I did a little googling and thought of using wget
to do the job and it worked. Here's the command I used:
wget -p -k -H --nd https://www.example.com
Let's see what do those flags mean:
-p
: Downloads all the necessary files to properly display the downloaded HTML page.-k
: After the download is complete, it converts the links in the document to make them suitable for local viewing.-H
: This would download files that spans different hosts.--nd
: While retrieving files recursively, it will not create a hierarchy of directories and downloads the files into a single directory instead.
If you open index.html
directly on the browser, the assets might be broken as the -k
flag doesn't seem to make the assets relative to the root directory. In order to view it, you can view it on a localhost server like WAMP, XAMPP or if you are using Python, you can type python -m http.server
and view your downloaded file.
Might be a bit messy but gets the job done.