Using PowerShell to download Teched Europe 2014 content

I have spent the evening exploring how to create a script to download the content from Teched with powerpoints and videos,

As some of you that follow me on twitter and other social media knows, I will be going to MVP summit in Redmond and the flight leaves early saturday morning and I wanted to be able to get the most important content from Channel 9.

My former colleague Tim has made a GUI session downloader and that is nice, but I wanted one with PowerShell and of course where I could select a category and in my case the CDP is most interesting.

I have borrowed some code to make the folders from Peter Schmidt, but went for the Invoke-RestMethod and also using BITS as the transfer engine.

It is just a simple script but still powerful, I check if the folder is already created and also if the files have been downloaded which means that I do not download the files again when new content has been added :-)

As you can see on the screendump I use switches for the different choices, so to download two different  you can use -CDP -WIN,

Updated 10 Nov: I have got an tip from Irwin to add info in the BITS transfer so you can see which PPT or Video that is currently downloading and updated the script with that :-)

Screen Shot 2014-11-10 at 20.50.25


The script is also on the Script Gallery at this link and please go in and vote if you like it.

Please also comment if you have ideas of improvement,  I have downloaded only -CDP as that one was my primary object for filling my HDD for the 10 hour flight over the atlantic and as I am a Hyper-V MVP with cloud and datacenter as a main interest :-) but you can choose if you want -All or just a couple of the different categories!


Irwin Strachan

Hi Niklas,

Thanks for the script! I never used the Start-BitsTransfer before so it was fun to see it in action.
Depending on which Start-BitsTransfer you’re using you could add a DisplayName and Description to have a general idea what Bits is up to…

For the MP$ stream it would be:
-DisplayName “MP4 $Code” -Description $folder

And for the PPT
-DisplayName “PPT $Code” -Description $folder

Thanks again!



Leave a comment


email* (not published)