Welcome to the Treehouse Community

Want to collaborate on code errors? Have bugs you need feedback on? Looking for an extra set of eyes on your latest project? Get support with fellow developers, designers, and programmers of all backgrounds and skill levels here with the Treehouse Community! While you're at it, check out some resources Treehouse students have shared here.

Looking to learn something new?

Treehouse offers a seven day free trial for new students. Get access to thousands of hours of content and join thousands of Treehouse students and alumni in the community today.

Start your free trial

General Discussion

Video Mass Download

I was wondering if there is any way I can download all of the team tree house videos in a bundle?

4 Answers

James Barnett
James Barnett
39,199 Points

I don't think so and it probably wouldn't be in Treehouse's best interest to allow that use case, as currently the videos don't have any DRM.

P.S. - I don't work for Treehouse this is just my 2 cents.

I just work on two computers usually at once, one with the videos, quizes, and code challenges, the other with notepad++ open or eclipse and programming along side the videos. So same goes for the coding files, it would be helpful if one could download the entire project, deep dive, or stage. (Though usually I don't download those, I follow along enough to write the starting code)

I just hate having to go through hundreds of unneeded pages to reach a link.

Run this on a server to get download links in one central location

<?php 
// Place your own unique token here
// ie. itpc://teamtreehouse.com/library/websites/build-a-simple-website.rss?feed_token=xxxxxxxx-xxxx-xxxx-xxxx-xxxxxxxxxxxx 
// $token = 'xxxxxxxx-xxxx-xxxx-xxxx-xxxxxxxxxxxx';
$token = '';

// Place any itunes feeds here
// This is an almost complete list... I left off some beginner lessons
// This might compile depending on server... You can split this array up

$urls = array(
'itpc://teamtreehouse.com/library/installing-a-ruby-development-environment.rss?feed_token='.$token,
'itpc://teamtreehouse.com/library/how-to-build-a-wordpress-plugin.rss?feed_token='.$token,
'itpc://teamtreehouse.com/library/implementing-designs-for-iphone.rss?feed_token='.$token,
'itpc://teamtreehouse.com/library/illustrator-foundations-3.rss?feed_token='.$token,
'itpc://teamtreehouse.com/library/usability-foundations.rss?feed_token='.$token,
'itpc://teamtreehouse.com/library/logo-design-basics.rss?feed_token='.$token,
'itpc://teamtreehouse.com/library/html-email-design.rss?feed_token='.$token,
'itpc://teamtreehouse.com/library/objectivec-basics.rss?feed_token='.$token,
'itpc://teamtreehouse.com/library/framework-basics.rss?feed_token='.$token,
'itpc://teamtreehouse.com/library/sass-basics.rss?feed_token='.$token,
'itpc://teamtreehouse.com/library/installing-a-ruby-development-environment.rss?feed_token='.$token,
'itpc://teamtreehouse.com/library/how-to-build-a-wordpress-plugin.rss?feed_token='.$token,
'itpc://teamtreehouse.com/library/implementing-designs-for-iphone.rss?feed_token='.$token,
'itpc://teamtreehouse.com/library/illustrator-foundations-3.rss?feed_token='.$token,
'itpc://teamtreehouse.com/library/usability-foundations.rss?feed_token='.$token,
'itpc://teamtreehouse.com/library/logo-design-basics.rss?feed_token='.$token,
'itpc://teamtreehouse.com/library/objectivec-basics.rss?'.$token,
'itpc://teamtreehouse.com/library/ios-foundations.rss?feed_token='.$token,
'itpc://teamtreehouse.com/library/build-a-simple-iphone-app-ios7-2.rss?feed_token='.$token,
'itpc://teamtreehouse.com/library/programming/build-a-simple-php-application.rss?feed_token='.$token,
'itpc://teamtreehouse.com/library/programming/building-social-features-in-ruby-on-rails.rss?feed_token='.$token,
'itpc://teamtreehouse.com/library/programming/build-a-simple-ruby-on-rails-application.rss?feed_token='.$token,
'itpc://teamtreehouse.com/library/programming/enhancing-a-simple-php-application.rss?feed_token='.$token,
'itpc://teamtreehouse.com/library/programming/using-php-with-mysql.rss?feed_token='.$token,
'itpc://teamtreehouse.com/library/programming/advanced-social-features-in-ruby-on-rails.rss?feed_token='.$token,
'itpc://teamtreehouse.com/library/programming/database-foundations.rss?feed_token='.$token,
'itpc://teamtreehouse.com/library/programming/ruby-foundations.rss?feed_token='.$token,
'itpc://teamtreehouse.com/library/programming/introduction-to-programming.rss?feed_token='.$token,
'itpc://teamtreehouse.com/library/programming/console-foundations.rss?feed_token='.$token,
'itpc://teamtreehouse.com/library/programming/git-basics.rss?feed_token='.$token,
'itpc://teamtreehouse.com/library/websites/build-a-responsive-website.rss?feed_token='.$token,
'itpc://teamtreehouse.com/library/websites/design-foundations.rss?feed_token='.$token,
'itpc://teamtreehouse.com/library/websites/build-an-interactive-website.rss?feed_token='.$token,
'itpc://teamtreehouse.com/library/websites/how-to-build-a-wordpress-theme.rss?feed_token='.$token,
'itpc://teamtreehouse.com/library/websites/html.rss?feed_token='.$token,
'itpc://teamtreehouse.com/library/websites/css-foundations-2.rss?feed_token='.$token,
'itpc://teamtreehouse.com/library/websites/website-basics.rss?feed_token='.$token,
'itpc://teamtreehouse.com/library/websites/aesthetic-foundations.rss?feed_token='.$token,
'itpc://teamtreehouse.com/library/websites/javascript-foundations.rss?feed_token='.$token,
'itpc://teamtreehouse.com/library/websites/photoshop-foundations.rss?feed_token='.$token,
'itpc://teamtreehouse.com/library/websites/accessibility.rss?feed_token='.$token,
'itpc://teamtreehouse.com/library/websites/technology-foundations.rss?feed_token='.$token,
'itpc://teamtreehouse.com/library/websites/illustrator-foundations.rss?feed_token='.$token,
'itpc://teamtreehouse.com/library/ios-development/build-a-simple-iphone-app.rss?feed_token='.$token,
'itpc://teamtreehouse.com/library/ios-development/build-a-blog-reader-iphone-app.rss?feed_token='.$token,
'itpc://teamtreehouse.com/library/ios-development/build-a-selfdestructing-message-iphone-app.rss?feed_token='.$token,
'itpc://teamtreehouse.com/library/ios-development/ios-foundations.rss?feed_token='.$token,
'itpc://teamtreehouse.com/library/business/how-to-start-a-business.rss?feed_token='.$token,
'itpc://teamtreehouse.com/library/business/how-to-build-your-company.rss?feed_token='.$token,
'itpc://teamtreehouse.com/library/business/how-to-market-your-business.rss?feed_token='.$token,
'itpc://teamtreehouse.com/library/business/careers-foundations.rss?feed_token='.$token,
'itpc://teamtreehouse.com/library/business/copyright-basics.rss?feed_token='.$token,
'itpc://teamtreehouse.com/library/business/how-to-run-a-web-design-business.rss?feed_token='.$token,
'itpc://teamtreehouse.com/library/business/how-to-build-your-business-through-blogging.rss?feed_token='.$token,
'itpc://teamtreehouse.com/library/android-development/build-a-simple-android-app.rss?feed_token='.$token,
'itpc://teamtreehouse.com/library/android-development/build-a-blog-reader-android-app.rss?feed_token='.$token
);

foreach ($urls as $url):
    $url = str_replace("itpc://","http://",$url);
    $xml = simplexml_load_file($url);

    echo '<h2>'.$xml->channel[0]->title.'</h2>';
    foreach ($xml->channel->item as $pixinfo):
        $title=$pixinfo->title;
        $link=$pixinfo->enclosure['url'];
        // In chrome the HTML5 download attribute will auto download, no right clicking necessary
        // Hold Alt plus Click will autodownload
        echo '<a href="'.$link.'" download>'. $title .'</a><br>';
    endforeach; 

endforeach; 



?>

Thank you so much Will!

I will attempt to work on some code myself that will do something similar.

I asked for a mass download link because in almost every lesson I take I downloading both HD and None HD videos, the transcript, source, and the actual pages source. (I have found this to be usefull as I code so when offline I can open the same exact pages as seen) I also go to each link show in the description and save the pages source also (Again to reference when offline)... I even sometime venture to download each 32bit, 64bit, linux, etc. versions of each suggested link. I want to put together a portfolio that is accessible by all types of machines.

So ideally the program I need to design a program that needs to do all that and more with a click of a button.

Again, Thank you will!