content: IIRC cURL doesn't support recursion, although that may have changed. WGET does though. I've mirrored several websites with WGET rather easily. Oh, here: https://curl.haxx.se/docs/comparison-table.html cURL doesn't do recursion. I've not heard of several of those other tools, looks like I've got more learning incoming. Another option might be the DownThemAll plugin for Firefox. I've used it before for mass grabbing files, but I'm not as familiar with its more advanced features so I'm not sure if it can handle site mirroring. I think WGET would be the easiest option, assuming that parsing his bookmarks via a script isn't too difficult. OFC, you want to be careful with recursive downloading. Accidentally trying to download the whole web would be an entertaining mistake. I'm not sure which WGET for windows is best though. Personally I'd probably stick with whatever comes with mingw or cygwin just because of familiarity, but there seem to be several standalone versions as well. EDIT: looking at my firefox bookmarks, they're in a file called places.sqlite located in %AppData%\Mozilla\Firefox\Profiles(your profile here)\ and the actual addresses are in plaintext. even though the whole file isn't, so it should be pretty "easy" (for certain values of easy) to copy them out via regex to feed into wget. OP, If you ask around on superuser they will be able to give detailed help on writing your script. In fact, here's a relevant question https://superuser.com/questions/590642/how-can-i-download-the-pages-referenced-by-me-bookmarks-as-html-files/590652#590652