1

There are similar questions like this one, but nothing exactly the same. Using the new Apple TV screensaver JSON resource as an example, with predictable URLs, (only the numbers after the b and the - change, it seems like it should be fairly trivial to create a pattern that wget can use inside of a function. The latter number only goes up to 4 also.

http://a1.phobos.apple.com/us/r1000/000/Features/atv/AutumnResources/videos/b6-4.mov

However, trying this, this and this fail, even with the -nd flag.

I feel like this is something simple and obvious I'm missing.

  • If you can somehow get a list of valid URLs, then you just need to run wget in a loop, or pass it -i. If not, it's very difficult; you'd need to brute-force it. – Tom Hunt Oct 19 '15 at 20:30
  • I mentioned the valid URLs. I also included the link. – Kevin Suttle Oct 20 '15 at 19:12
  • Maybe: wget http://..../b{1..10}-{1..4}.mov? – muru Oct 20 '15 at 19:24
1

I know this was a wget question, but if you're open to using curl here's how to do it:

Download and keep original filename

curl -O -L -f http://a1.phobos.apple.com/us/r1000/000/Features/atv/AutumnResources/videos/b[1-10]-[1-4].mov

Download and use custom filename

curl -o screensaver-b#1-#2.mov -L -f http://a1.phobos.apple.com/us/r1000/000/Features/atv/AutumnResources/videos/b[1-10]-[1-4].mov

If you wanted to multi thread it, you would just break up the first regex into.. something like:

curl -O -L -f http://a1.phobos.apple.com/us/r1000/000/Features/atv/AutumnResources/videos/b[1-5]-[1-4].mov -O -L -f http://a1.phobos.apple.com/us/r1000/000/Features/atv/AutumnResources/videos/b[6-10]-[1-4].mov`

-0 download as same filename as what’s being served

-o customize downloaded file name

-L follow location headers

-f fail silently so you don’t download 404s

Your Answer

By clicking “Post Your Answer”, you agree to our terms of service, privacy policy and cookie policy

Not the answer you're looking for? Browse other questions tagged or ask your own question.