How to download files off the web with Perl?
July 15, 2007 1:26 PM Subscribe
I am need help writing a Perl script that given the URL of a file (particularly image files) it downloads the file to a local directory I define.
I am doing this using XAMPP on my windows box, and is for a local script which generates a web page. Any advice would be apprecaited.
I am doing this using XAMPP on my windows box, and is for a local script which generates a web page. Any advice would be apprecaited.
Probably the easiest way would be to get a program like wget or curl and invoke it from the Perl script with backticks.
posted by goingonit at 1:40 PM on July 15, 2007
posted by goingonit at 1:40 PM on July 15, 2007
(Not to mention the difference between using system() vs. ``, etc. They are quite different.)
posted by kcm at 2:11 PM on July 15, 2007
posted by kcm at 2:11 PM on July 15, 2007
Response by poster: This is a perl script that gets called by the browser. IE, I go to http://localhost/perl/myscript.pl and it gets done. And yes, the files will always be HTTP. Also, I am not sure how to call something like wget from a perl script.
Looking in LWP::Simple, I found a function I hadnt noticed before. Mirror() downloads the file all right, and I can even choose the folder. However, it doesnt let me move the file to a folder that doesnt exist.
So I guess the question to solve that is, how does one create a folder with Perl?
posted by LoopyG at 2:29 PM on July 15, 2007
Looking in LWP::Simple, I found a function I hadnt noticed before. Mirror() downloads the file all right, and I can even choose the folder. However, it doesnt let me move the file to a folder that doesnt exist.
So I guess the question to solve that is, how does one create a folder with Perl?
posted by LoopyG at 2:29 PM on July 15, 2007
Response by poster: Ack, never mind. With some googling I found the mkpath and move commands. Thanks everyone!
posted by LoopyG at 2:38 PM on July 15, 2007
posted by LoopyG at 2:38 PM on July 15, 2007
« Older Excel dragging other files into the party... | What's the best way to pay for a sublease across... Newer »
This thread is closed to new comments.
Is there a reason that you can't just use wget, curl, snarf, or another command-line program dedicated to this purpose?
I don't know off the top of my head how to do this in Perl, but I'm positive you'll find a file-downloading library if you search CPAN.
posted by zixyer at 1:31 PM on July 15, 2007