wget for Mac OS X

February 22nd, 2005

Update: I’ve posted a new, updated version of wget for OS X which you may want to try instead.

If you want to grab files from the web using the command line, the wget utility is great.

Recent versions of Mac OS X don’t include it. They come with curl instead, which has some good features, but is also missing a great deal.

Here’s wget.zip, which contains wget built for Mac OS X 10.3.
Hope someone finds it useful!

Update: If you like this, you might also like my mtr for Mac OS X, or be interested in lots of other Apple-related stuff here.

Posted on Tuesday, February 22nd, 2005 at 6:49 pm and filed under Apple, General.

93 Responses to “wget for Mac OS X”

  1. Sam Says:

    Thanks for the binary. Wget is way better than safari for resuming downloads.

  2. Mike Says:

    Thanks Q — saved me some SERIOUS time waiting for Perl’s CPAN to try to find things with FTP since I didn’t have wget.

  3. Steve sok Says:

    Many thanks. Am still puzzled why make and make install didn’t work, using the GNU download. Any suggestions for future reference?

  4. quentin Says:

    Steve – I think I just used the instructions
    here and built from the latest CVS.
    There may have been some recent fixes which make building on the Mac easier. But I didn’t do anything clever!

  5. kris Says:

    much appreciated, you the fella. wget for OSX is great, wget for OSX is good, it’s a delight. wget hooray! (ok i’m trying to get you more googlegoodness i admit it)

  6. Grey Says:

    Thank you very much for providing this. I was a bit perplexed to find that it wasn’t included by default..

  7. Steven Andrew Miller Says:

    Thanks for this! Wget should come as default!

  8. Grey Says:

    Thanks, very useful indeed. Much less of a hassle than figuring out how to use curl; it’s –help screen scared me and made me run screaming to google for ‘wget mac’ :)

  9. Hilary Mark Nelson Says:

    Thanks for compiling this. I think I’ve got it running, but your instructions left me a bit perplexed. I’m running OS X 10.3.9, and I don’t seem to have the three target directories you mentioned in the Readme file: /usr/local/bin, /usr/local/man/man1, and /usr/local/etc. (Actually, I now have a /usr/local/bin, but I think I accidentally created it in my newbie attempts to move wget to that location.)

    Eventually, after a lot of clueless poking and searching, I decided that wget belonged in /usr/bin, and wget.1 should go in /usr/share/man/man1. I think it worked–wget responds when I invoke it, and I can get its man pages.

    I never did figure out where the global wgetrc file belonged, though. Any ideas? Did Apple switch a lot of directories around when they went to 10.3.9?

    Thanks!

  10. qsf Says:

    Hilary –

    You can create those directories if you don’t have them, but it’s largely a matter of convention. Things in /usr/local are normally not part of the operating system and so won’t be overwritten by future releases of the operating system. If you put the binary in /usr/local/bin, you probably want to make sure that /usr/local/bin is also on your PATH just for convenience. But there should be no problem with having it in /usr/bin.

    The exception here is the wgetrc. The binary *does* expect to find that in /usr/local/etc, but I don’t think there’s any problem if it’s missing. You can also put it, or variations on it, in your home directory as .wgetrc .

    Quentin

  11. Ted Pennings Says:

    Thanks! I love wget on my *nix boxes. Consequently I missed it on my Mac. I think it used to be included in the developer kit for OS X back in the 10.2 days… why-ever they “replaced” it with curl is beyond me

  12. sternone Says:

    wget rules!! curl sucks!! thanks for compiling the wget to a binary !! he works great !!

  13. Siplus Says:

    thanks for this pre-built binary! was one of the first results on google

  14. Tricia Says:

    Thanks – you’re a star!

  15. cameron aka desk003 Says:

    Thank you very much!

  16. unixgold Says:

    This is great. Thanks for making this wget build for OS X. THis is my first Mac box, the old ones were all Linux systems where I used this all the time. I even had wget for Win32 systems I built for others.

    Thanks again!

  17. rjcarr Says:

    Just wanted to let everyone know this works in tiger too. I have been missing wget from mac and didn’t know about curl. Just copied to /usr/bin and worked great. Thanks!

  18. Prashant Patel Says:

    Hi there, just wanted to say a big thanks for WGet – fanstastic :D (Prashaant, Aucklannd, NZ)

  19. Adam Boynton Says:

    You rock, thanks so much!!

  20. sparkes Says:

    Cheers dude, this saved me digging out the develop tools disc and fighting with ./configure ;-)

  21. opus Says:

    Great, just stuck it in /usr/bin on 10.4 and good to go…thanks!

  22. brad Says:

    I’m almost positive it’s possible to download an HTML and strip it of all HTML tags. Is it wget that can do this or am I thinking of another command that is (someone I know has done this) done after getting the HTML file?

  23. Jon Maddox Says:

    thanks :)

  24. henq Says:

    brad:
    I think you mean ‘lynx’.
    If you use it like
    lynx URL >dump.txt
    you’ll get a text variant of the requested page.

  25. John Rice Says:

    Thanks for the binary. I ran it on Tiger, no problem. Great tool, I’m surprised Apple doesn’t include in their distribution.

  26. luis fernandes Says:

    Thanks for making the binary available for d/l.

    John Rice: the reason wget is not on OS X, is that ‘wget’ is GPL’d; ‘curl’ uses the BSD License.

  27. theAlphaJohn Says:

    Big help man…danke.

  28. jer Says:

    in all spirit of *nix-ness, you should just build it from darwin ports or fink. :)

  29. qsf Says:

    Yes, but then, I think, it would be rather dependendent on those environments? Is that right? I have limited experience of fink and darwin ports, and while they’re good, I always end up installing quite a lot of stuff beyond the bit I want.

    The main reason I rebuild packages like this is so they’ll run on a standard Mac OS X install without the need to install anything else. I’ve done bits of Bacula the same way.

  30. Jared Ferguson Says:

    Just wanted to say thanks. I completely avoided having to install FINK on my virgin Tiger install. :)

  31. William Janoch Says:

    To do what’s called for in the Readme.txt you’ll need to issue these commands:
    sudo mkdir /usr/local
    sudo mkdir /usr/local/bin
    sudo mkdir /usr/local/man
    sudo mkdir /usr/local/man/man1
    sudo mkdir /usr/local/etc

    sudo cp wget /usr/local/bin/
    sudo cp wget.1 /usr/local/man/man1/
    sudo cp wgetrc /usr/local/etc/

    But you could just do this one and it will work:
    sudo cp wget /usr/bin

    My favorite way to use wget is:
    wget -r http://www.helpmedude.com

    the -r is recursive and the web address will download to the current directory. use -l 5 to restrict the levels of recursion to 5 (default) or -l 0 for infinite.

    NOTE: sudo is geek for “Switch User and DO this task” and since no user is given it switches to the “Super User” named root. It asks you for YOUR password (not root’s) the first time you run sudo. I think it times out in 15 minutes or when you close Terminal, so you may be prompted for your password again.

  32. devyn Says:

    Thanks for this – it’s looks great, though I have a Terminal-newbie question (which is – hopefully – probably pretty basic).

    I copied the files to the proper directories (some existed as hidden directories, and I created the others, via William Janoch’s commands above). But now, when I run Terminal and try Wget, it says it can’t find the command. I can double-click Wget and it launches fine. Is this something with changing the shell? Or somehow telling Terminal that a new command exists?

    I also tried installing Wget via Darwin Ports, but – same thing – it can’t run Darwin Ports either after installation.

    I am running the latest Tiger release on a G4 Powerbook.

    Help?

  33. qsf Says:

    Hi Devyn -

    You may need to put the directory containing wget on your path. Typically you’d do this by editing the .bashrc or .bash_profile in your home directory to include something like:

    export PATH=$PATH:/usr/local/bin

    and then logging out and logging back in again.

    Alternatively, you can try running the command by specifying the directory expliticitly:

    /usr/local/bin/wget

    You may have done this – apologies if this is obvious.

  34. devyn Says:

    That worked! Thank you!

    And no… it was not obvious… (shrugs shoulders… newbie question answered… )

  35. Kris Says:

    Thank you so much for having this up on the web! You’re instructions were understandable, easy, and best of all, they worked! I wish every unix-related site was this wonderful!

  36. Tony Says:

    Thanks qsf

    That help me too.

  37. Rob Says:

    Like a charm, thanks a lot. PS: I almost didn’t survive your captcha check, and trust me I’m a human!

  38. Troy Says:

    Thanks indeed. Installing a whole package manager like darwin ports or fink just so I could have wget every time I switched computers or reinstalled the OS was getting old. This goes on “The CD.”

  39. Michael Says:

    Thank you, wget is an essential (Google PageRank love for you)

  40. Ari Says:

    Another newbie question. I have OSX 10.4 and rarely used terminal. Under my /user/, there was no local folder at all. So I had to create all the folders, as stated in the readme. I tried qsf’s advise, but I probably didn’t understand it very well and made a mistake. Could someone please help me, a person who’s never used terminal? Thanks.

  41. Jarik Says:

    thanks for this, i finaly managed to install wget useing the info here. however i have a question.
    wenever i try to use wget, it returns the error
    dyld: wget can’t open library: /usr/lib/libssl.0.9.7.dylib (No such file or directory, errno = 2)
    Trace/BPT trap

    i’m a unix nooblet maximus so i dont realy know what to do now.

    any advice would be great.

  42. gh0st Says:

    I was shocked when I tried to use wget on 10.4 and to my astonishment:

    patient_zero:~ root# wget blah.com
    su: wget: command not found

    so I went looking around and I couldn’t believe 10.4 did not come with wget.

    BIG THANKS!

  43. Alf Says:

    Running Tiger on a G4 PB.

    All directories exist, and everything was put where it should be, but “man wget” doesn’t work.

    Did I miss something?

    thanks and well done :^)

  44. qsf Says:

    Hi Alf –

    The place where ‘man’ looks for man pages on Tiger is defined in /usr/share/misc/man.conf (see ‘man man’!).

    You might either want to add an extra line ‘MANPATH /usr/local/man’, or copy wget.1 into a /usr/local/share/man/man1 folder, which is on the default path.

    And ‘wget -h’ will also give you a pretty good summary of the options.

    Quentin

  45. Alf Says:

    Thanks Q.

    While I love the Mac, my Unix skills aren’t quite there yet. Still sussing out the directory structure (among many other things… :^)

    And may I humbly add a “d’oh!” for not having thought of “man man” myself…!

    :^)

  46. gabe Says:

    Your 10.3 biuld work on 10.4.6 Intel. Thanks.

  47. Vik Says:

    Quentin

    I’m running Tiger 10.4.6 and I followed the instructions exactly. I had to create the man1 folder because I have man8 instead. Other than that I followed your instructions and copied all necessary files into the directories stated. It’s still not working. I didn’t modify my path variable but instead cd /usr/local/bin/wget and get “command not found”. Suggestions?
    BTW thanks for this. I don’t like curl and want to be able to use wget on my mac.

  48. rue Says:

    it works well on macbook, too.
    Thanks, Rue

  49. Pelo Says:

    And if you don’t want to use the command line, there’s Deep Vacuum. wget with a graphical interface.

  50. killer Says:

    thanks a lot…i am a big user of wget! and you made my macbook pro experience easier

  51. Al Says:

    Will wget binary work for Tiger? (I’m a first-day Mac user…. long time Linux user.)

    Thanks.

  52. Mark Wilson Says:

    Thank you so much for this. I was going to use the Darwin port version but I didn’t want to have to install anything else on my clean(ish) OS X 10.4.7 system – this worked a treat.

  53. Paul Says:

    Thanks for making my life much easier!

  54. julien Says:

    thank you!

  55. Mark Says:

    Hi,

    thanks for the great information. Can you point me to lateste binary release of wget for Mac?

    Thanks in advance,

    Mark

  56. Nick Says:

    Thanks! I needed this for a CS project and I didn’t want to have to run it on our university’s crappy Ubuntu server.

    Nick

  57. Nick Says:

    Excellent, I usually needed to install Dev Tools to compile, much better with a precomiled binary. Curl blows. Ex.
    curl -C – -O url/filename.dmg
    wget url/filename.dmg

  58. Anders Says:

    thank a lot!

  59. Tris Says:

    Running 10.4.7 on an intel iMAC, and worked wonders. I did have to look at the comments for the appropriate place – maybe update the readme eventually. Works wonders, thanks!

  60. Dan Says:

    Here’s a better way to build it:

    ./configure –prefix=/opt/local –infodir=/opt/local/share/info –mandir=/opt/local/share/man –with-ssl
    make
    sudo make install

    /usr/local/bin is not normally in your PATH

  61. qsf Says:

    Thanks, Dan. But /opt/local isn’t normally in your path either, unless you’re using MacPorts or similar. In wich case you probably wouldn’t need this package!

  62. Brian Schott Says:

    Thank you very much for your wget binary. Your binary worked fine on my PPC Mac with Tiger, with one small glitch. I use the programming language J (a modern dialect of APL) http://www.jsoftware.com/ and /usr/local/bin was not in the PATH for J to access, so a unix expert of the J community was able to tell me how to alter /etc/profile to get wget on the PATH by adding the following paragraph to /etc/profile as follows:

    ## brian added /usr/local/bin for wget start 1/9/7 12:51
    ## Do not remove the previous line
    if [ `whoami` != "root" ]
    then
    PATH=”$PATH:/usr/local/bin”
    export PATH
    fi
    ## Do not remove the next line
    ## brian added /usr/local/bin for wget end 1/9/7 12:51

  63. Captain Bogus Says:

    Appreciation from Tokyo! Went to compile it to find the dev kit not installed on the new mac. You are a life saver.

  64. Are Says:

    Much appreciated from Oslo, Norway, thanks!

  65. seb jean Says:

    Works gret. Thanks.

  66. Homer Simpson Says:

    The wget package was very useful, tanks millions.

  67. Keith Says:

    I just posted an updated version of this on my blog, based on your work as well as the work done by a couple of others. The new version was compiled on OS X 10.4.9, on an intel-based MacBook.

  68. Gavin Baker Says:

    Thanks for this. I had to use OS X at work, and curl -r doesn’t do what I wanted :( wget rules!

  69. Björn Says:

    Perferct! Thnx a lot for this neat util.

  70. Rebecca Pack Says:

    Thanks, I needed this.

  71. Burgess Patterson Says:

    Thanks – very useful to find your site after a quick google. thought I was going to have to do the whole fink thing to get wget.

  72. Stu Thompson Says:

    And another thanks. such a simple but essential tool…how did i manage without it on my mac for so long??

  73. Justin Tilson Says:

    AWESOME! Thanks so much for putting this out there.

  74. Mark Says:

    much thanks for wget!

  75. Medicine Says:

    спасибо за wget ! может у кого-то trafshow есть под mac os tiget ?

  76. david elliott Says:

    much thanks!

  77. guido barosio Says:

    Great Mate, great! Thanks

  78. jose Says:

    thanks! you helped me out in a pinch. :) didn’t feel like downloading and satisfying all of those darned dependencies just not.

  79. Chris Cook Says:

    Confirmed, works great with Leopard 10.5.1

  80. Andreas Berger Says:

    Thanks

    I use 10.4.11 and following terminal commands worked for me without recompiling or configuring.

    Placed unpacked folder in homefolder

    cd wget
    sudo su root (enter password)
    mv wget.1 /usr/share/man/man1
    mv wgetrc /usr/local/etc
    mv wget /opt/local/bin/wget

  81. Dirceu Jr Says:

    Thanks! works with Leopard ;)

  82. sternone Says:

    After 3 years i still come back here after every install to download the wget binary THANKS!!!

  83. busta5000 Says:

    yes I want to know what should I type in the terminal to download what I want e.g. youtube videos.

    can you tell me how to install it properly because I read the read me & when I created

    user/abdulrahman/local/bin
    /man
    /etc

    I copied also the other files in the location where they are suppose to be but it didn’t work can you tell me exactly how to install it properly & how to use it to download youtube videos.

  84. Andreas Says:

    Thanks!

    Its great if some people generate binaries.

  85. matt Says:

    Thanks man, I really appreciate the time you took to compile it, and post this! Way to go!

  86. Ryan Says:

    Thanks very much for offering wget, why it is not included by default is a mystery!

  87. Krakow nieruchomosci Says:

    Thanks for the heads up!! Really useful information.

  88. krf Says:

    i also thank you from the bottom of my heart! 6 hours saved :)

  89. =amante Says:

    Older version worked fine for 10.3.9 — Thanks

  90. george backoff Says:

    awesome, thanks!

  91. Evan Donovan Says:

    Thanks so much. This still works on 10.4, whereas the newer one doesn’t.

  92. Lee Goddard Says:

    Thank you very much – this makes life much easier!

  93. shri amin Says:

    r u sure that wget was ever part of mac osx…according to my recent post and comments on stackoverflow, it never was a part of mac osx….curious.

Leave a Reply