<?xml version="1.0" encoding="UTF-8"?>
<rss version="2.0"
	xmlns:content="http://purl.org/rss/1.0/modules/content/"
	xmlns:wfw="http://wellformedweb.org/CommentAPI/"
	xmlns:dc="http://purl.org/dc/elements/1.1/"
	xmlns:atom="http://www.w3.org/2005/Atom"
	xmlns:sy="http://purl.org/rss/1.0/modules/syndication/"
	xmlns:slash="http://purl.org/rss/1.0/modules/slash/"
	>

<channel>
	<title>jeffmilner.com &#187; tutorial</title>
	<atom:link href="http://jeffmilner.com/index.php/category/tutorial/feed/" rel="self" type="application/rss+xml" />
	<link>http://jeffmilner.com</link>
	<description>Living it up in Lethbridge, AB</description>
	<lastBuildDate>Sat, 21 Apr 2012 06:44:13 +0000</lastBuildDate>
	<language>en</language>
	<sy:updatePeriod>hourly</sy:updatePeriod>
	<sy:updateFrequency>1</sy:updateFrequency>
	<generator>http://wordpress.org/?v=3.3.2</generator>
		<item>
		<title>YouTube Video Direct Download Script</title>
		<link>http://jeffmilner.com/index.php/2009/05/13/youtube-video-direct-download-script/</link>
		<comments>http://jeffmilner.com/index.php/2009/05/13/youtube-video-direct-download-script/#comments</comments>
		<pubDate>Wed, 13 May 2009 11:09:35 +0000</pubDate>
		<dc:creator>Jeff Milner</dc:creator>
				<category><![CDATA[tutorial]]></category>
		<category><![CDATA[download]]></category>
		<category><![CDATA[YouTube]]></category>

		<guid isPermaLink="false">http://jeffmilner.com/?p=689</guid>
		<description><![CDATA[<a href="http://jeffmilner.com/index.php/2009/05/13/youtube-video-direct-download-script/" title="YouTube Video Direct Download Script"></a>If you use Firefox, Safari, Google Chrome or Opera, you can download YouTube videos directly by pasting the following code into your address bar while watching the video. javascript:window.location.href = 'http://youtube.com/get_video?video_id=' + swfArgs['video_id'] + "&#038;l=" + swfArgs['l'] + "&#038;sk=" + &#8230;<p class="read-more"><a href="http://jeffmilner.com/index.php/2009/05/13/youtube-video-direct-download-script/">Read more &#187;</a></p>]]></description>
			<content:encoded><![CDATA[<a href="http://jeffmilner.com/index.php/2009/05/13/youtube-video-direct-download-script/" title="YouTube Video Direct Download Script"></a><p>If you use Firefox, Safari, Google Chrome or Opera, you can download YouTube videos directly by pasting the following code into your address bar while watching the video.</p>
<p><code>javascript:window.location.href = 'http://youtube.com/get_video?video_id=' + swfArgs['video_id'] + "&#038;l=" + swfArgs['l'] + "&#038;sk=" + swfArgs['sk'] + '&#038;t=' + swfArgs['t'];</code></p>
<p>When the download is finished, be sure to rename it with a .flv extension.</p>
<p>Alternatively, use this code:</p>
<p><code>javascript:window.location.href = 'http://youtube.com/get_video?video_id=' + swfArgs['video_id'] + "&#038;fmt=18" + "&#038;l=" + swfArgs['l'] + "&#038;sk=" + swfArgs['sk'] + '&#038;t=' + swfArgs['t'];</code></p>
<p>to download in the higher quality mp4 format.</p>
<p>(<a href="http://unlockforus.blogspot.com/2008/09/directly-download-youtube-videos-in.html">via</a>)</p>
]]></content:encoded>
			<wfw:commentRss>http://jeffmilner.com/index.php/2009/05/13/youtube-video-direct-download-script/feed/</wfw:commentRss>
		<slash:comments>2</slash:comments>
		</item>
		<item>
		<title>Custom RSS Via Yahoo! Pipes</title>
		<link>http://jeffmilner.com/index.php/2009/04/06/custom-rss-via-yahoo-pipes/</link>
		<comments>http://jeffmilner.com/index.php/2009/04/06/custom-rss-via-yahoo-pipes/#comments</comments>
		<pubDate>Mon, 06 Apr 2009 15:42:23 +0000</pubDate>
		<dc:creator>Jeff Milner</dc:creator>
				<category><![CDATA[tutorial]]></category>
		<category><![CDATA[XML]]></category>
		<category><![CDATA[Yahoo! Pipes]]></category>

		<guid isPermaLink="false">http://jeffmilner.com/?p=29</guid>
		<description><![CDATA[<a href="http://jeffmilner.com/index.php/2009/04/06/custom-rss-via-yahoo-pipes/" title="Custom RSS Via Yahoo! Pipes"></a>This afternoon I’ve been playing around with Yahoo Pipes, a service that converts web pages without RSS feeds into useful XML files oozing with possibility. For my first project, I wanted to get my local movie listings into Google Reader. &#8230;<p class="read-more"><a href="http://jeffmilner.com/index.php/2009/04/06/custom-rss-via-yahoo-pipes/">Read more &#187;</a></p>]]></description>
			<content:encoded><![CDATA[<a href="http://jeffmilner.com/index.php/2009/04/06/custom-rss-via-yahoo-pipes/" title="Custom RSS Via Yahoo! Pipes"></a><p><img style="border: 1px solid #000; margin: 0px 8px 0px 0px; padding: 10px; float: left;" src="http://jeffmilner.com/2009/04/pipes-logo.gif" alt="Yahoo! Pipes Logo" />This afternoon I’ve been playing around with <a href="http://pipes.yahoo.com/pipes/">Yahoo Pipes</a>, a service that converts web pages without RSS feeds into useful XML files oozing with possibility.</p>
<p>For my first project, I wanted to get my local movie listings into Google Reader. Here is the finished product, an <a href="http://pipes.yahoo.com/pipes/pipe.run?_id=biugLNgi3hG2kzCOwjSbTQ&amp;_render=rss">RSS feed for The Movie Mill</a>, a theatre that’s only a few blocks from my house.</p>
<p>I’ve been irritated that a service that would benefit the theatre and its customers has not been available for the past few years. (I hope this feed makes it’s way around so that more people will know what movies are playing and when… it builds on the idea that information wants to be free, even if going to the movies costs money).</p>
<p>Other feeds I’ve thrown together today include an <a href="http://pipes.yahoo.com/pipes/pipe.run?_id=Yog1rdUi3hGR21gs6icw5g&amp;_render=rss">RSS feed for the Lethbridge Herald Front Page News</a> and another <a href="http://pipes.yahoo.com/pipes/pipe.run?_id=720518c6ba5aad1f5dc787173b5b1563&amp;_render=rss">RSS feed for the Medicine Hat Front Page News</a> too! It’s kind of wonderful that technology allows one to liberate data and reformat it in a way that makes sense.</p>
<p>Details on how I put together the pipes after the jump:<br />
<span id="more-29"></span><br />
First things first, check out the <a href="http://pipes.yahoo.com/pipes/docs?doc=overview">Yahoo Pipes FAQ</a> to get an overview of what Pipes is, and how it works.</p>
<p>You will have to create a Yahoo account if you don’t already have one. Once you’re logged in, click on Create a new pipe and drag a new “Fetch Page” module into the workspace. It can be found under the sources section. Enter the URL of the target site:</p>
<p><img src="http://jeffmilner.com/2009/04/pipes-tutorial-01.jpg" alt="Pipes Tutorial 01" /></p>
<p>I viewed the source code of the target site and decided where I wanted to begin parsing the document. I didn’t need the sidebar or any of the javascript features for the feed, so I chose <code>&lt;table class="movie_container"&gt;</code> for the start point:</p>
<p><img src="http://jeffmilner.com/2009/04/pipes-tutorial-02.jpg" alt="Pipes Tutorial 02" /></p>
<p>I copied that code and pasted it into the “Cut content from:” input box. Then repeated with the code to show where to end of the file. I copy the HTML tag from just after the main column’s div tag ended. <code>&lt;div id="sidebar_bottom"&gt;</code>. All of the content items that I want in the new feed are between those two HTML tags:</p>
<p><img src="http://jeffmilner.com/2009/04/pipes-tutorial-03.jpg" alt="Pipes Tutorial 03" /></p>
<p>Next I added <code>&lt;/table&gt;</code> into the Split using delimiter field, breaking up the page into separate items every time pipes finds <code>&lt;/table&gt;</code> within the start and finish locations:</p>
<p><img src="http://jeffmilner.com/2009/04/pipes-tutorial-04.jpg" alt="Pipes Tutorial 04" /></p>
<p>You can test your progress by clicking on the Fetch Page box and making sure that the data is being collected and cut into individual posts at the correct point:</p>
<p><img src="http://jeffmilner.com/2009/04/pipes-tutorial-05.jpg" alt="Pipes Tutorial 05" /></p>
<p>Notice that each numbered item has its own content section that includes options for viewing in rendered HTML or source code mode:</p>
<p><img src="http://jeffmilner.com/2009/04/pipes-tutorial-06.jpg" alt="Pipes Tutorial 06" /></p>
<p>Next add the rename module from the Operators section and connect the data from the Fetch box via a pipe. The rename module lets you rename or copy item attributes. In this example, the page I was pulling data was not formatted semantically, so all the data gets dropped into <code>item.content</code>. I wanted three copies of the <code>item.content</code> data named as <code>item.title</code>, <code>item.description</code>, and <code>item.link</code>. I would eventually edit them down to contain just what they needed for the XML <code>&lt;title&gt;</code>, <code>&lt;link&gt;</code>, and <code>&lt;description&gt;</code> tags but for the moment, three copies was perfect:</p>
<p><img src="http://jeffmilner.com/2009/04/pipes-tutorial-07.jpg" alt="Pipes Tutorial 07" /></p>
<p>At this point, if you click on rename and check the debugger you should find the original <code>item.content</code>, followed by <code>title</code>, <code>description</code>, and <code>link</code> (each containing a copy of the original data).</p>
<p>The last step, before connecting to the final output, is the Regex module. You’ll find it in the Operators section. The Regex module lets you apply Perl-like regular expressions to item attributes. (Don’t let that intimidate you, I don’t know anything about Perl, but I found it’s pretty easy to figure out).</p>
<p><img src="http://jeffmilner.com/2009/04/pipes-tutorial-08.jpg" alt="Pipes Tutorial 08" /> </p>
<p>I looked to the pipes help on Operators in the <a href="http://pipes.yahoo.com/pipes/docs?doc=operators#Regex">regex section</a> for some good help on the basics.</p>
<p><strong>Hold it right there partner.</strong> Go back to that last paragraph and click the link about regex. I promise it’ll save you a LOT of trouble.</p>
<p>Most of the regex work involved cleaning out the data that I didn’t want within each of the respective item.description, item.title, and item.link items. Selecting for instances of <code>&lt;div+.+class=\"rating\"&gt;</code> meant that everything between <code>&lt;div</code> and <code>class=\"rating\"&gt;</code> was replaced with no text.</p>
<p>I won’t go through all of the conditions here, but I’ll just say that after a lot of trial and error, I connected the final pipe to the output and the RSS feed so close to launch I could taste it.</p>
<p><img src="http://jeffmilner.com/2009/04/pipes-tutorial-09.jpg" alt="Pipes Tutorial 09" /></p>
<p>Save, run pipe, and then click “Get as RSS”. It’s just that easy.</p>
]]></content:encoded>
			<wfw:commentRss>http://jeffmilner.com/index.php/2009/04/06/custom-rss-via-yahoo-pipes/feed/</wfw:commentRss>
		<slash:comments>2</slash:comments>
		</item>
		<item>
		<title>DIY Garden Lanterns</title>
		<link>http://jeffmilner.com/index.php/2008/08/22/diy-garden-lanterns/</link>
		<comments>http://jeffmilner.com/index.php/2008/08/22/diy-garden-lanterns/#comments</comments>
		<pubDate>Fri, 22 Aug 2008 15:50:20 +0000</pubDate>
		<dc:creator>Jeff Milner</dc:creator>
				<category><![CDATA[Art]]></category>
		<category><![CDATA[tutorial]]></category>
		<category><![CDATA[diy]]></category>
		<category><![CDATA[Garden]]></category>
		<category><![CDATA[Lantern]]></category>
		<category><![CDATA[LED]]></category>

		<guid isPermaLink="false">http://jeffmilner.com/?p=645</guid>
		<description><![CDATA[<a href="http://jeffmilner.com/index.php/2008/08/22/diy-garden-lanterns/" title="DIY Garden Lanterns"></a>If you’ve ever thought about getting some LED garden lights, check out the link for a simple and inexpensive tutorial on how to make your own.]]></description>
			<content:encoded><![CDATA[<a href="http://jeffmilner.com/index.php/2008/08/22/diy-garden-lanterns/" title="DIY Garden Lanterns"></a><p><img src="http://farm4.static.flickr.com/3114/2780891528_01dbbaae60_m.jpg" alt="Homemade LED Garden Lights" style="float:right;" />If you’ve ever thought about getting some <a href="http://www.evilmadscientist.com/article.php/lantern">LED garden lights</a>, check out the link for a simple and inexpensive tutorial on how to make your own.</p>
]]></content:encoded>
			<wfw:commentRss>http://jeffmilner.com/index.php/2008/08/22/diy-garden-lanterns/feed/</wfw:commentRss>
		<slash:comments>0</slash:comments>
		</item>
		<item>
		<title>Attack of the Glowing Tomatoes</title>
		<link>http://jeffmilner.com/index.php/2007/08/15/attack-of-the-glowing-tomatoes/</link>
		<comments>http://jeffmilner.com/index.php/2007/08/15/attack-of-the-glowing-tomatoes/#comments</comments>
		<pubDate>Wed, 15 Aug 2007 16:39:47 +0000</pubDate>
		<dc:creator>Jeff Milner</dc:creator>
				<category><![CDATA[tutorial]]></category>

		<guid isPermaLink="false">http://jeffmilner.com/?p=1420</guid>
		<description><![CDATA[<a href="http://jeffmilner.com/index.php/2007/08/15/attack-of-the-glowing-tomatoes/" title="Attack of the Glowing Tomatoes"></a>Check out this clever how-to video that explains how to make your own glowing tomato. The instructions over at diylife are worth the read. [Make A GLOWING TOMATO ! - Metacafe]]]></description>
			<content:encoded><![CDATA[<a href="http://jeffmilner.com/index.php/2007/08/15/attack-of-the-glowing-tomatoes/" title="Attack of the Glowing Tomatoes"></a><p>Check out this clever how-to video that explains how to make your own glowing tomato. The <a href="http://www.diylife.com/2007/08/14/attack-of-the-glowing-tomatoes/">instructions over at diylife</a> are worth the read.</p>
<p><object type="application/x-shockwave-flash" data="http://www.metacafe.com/fplayer/757249/make_a_glowing_tomato.swf" width="500" height="405"><param name="movie" value="http://www.metacafe.com/fplayer/757249/make_a_glowing_tomato.swf" /><param name="wmode" value="transparent" /><param name="allowfullscreen" value="true" /></object><br />
[<a href="http://www.metacafe.com/watch/757249/make_a_glowing_tomato/">Make A GLOWING TOMATO !</a> - Metacafe]</p>
]]></content:encoded>
			<wfw:commentRss>http://jeffmilner.com/index.php/2007/08/15/attack-of-the-glowing-tomatoes/feed/</wfw:commentRss>
		<slash:comments>0</slash:comments>
		</item>
		<item>
		<title>Download MOV versions of iTunes Music Videos</title>
		<link>http://jeffmilner.com/index.php/2005/09/27/download-mov-versions-of-itunes-music-videos/</link>
		<comments>http://jeffmilner.com/index.php/2005/09/27/download-mov-versions-of-itunes-music-videos/#comments</comments>
		<pubDate>Tue, 27 Sep 2005 05:02:55 +0000</pubDate>
		<dc:creator>Jeff Milner</dc:creator>
				<category><![CDATA[tutorial]]></category>
		<category><![CDATA[download]]></category>
		<category><![CDATA[itunes]]></category>
		<category><![CDATA[Music]]></category>

		<guid isPermaLink="false">http://jeffmilner.com/?p=474</guid>
		<description><![CDATA[<a href="http://jeffmilner.com/index.php/2005/09/27/download-mov-versions-of-itunes-music-videos/" title="Download MOV versions of iTunes Music Videos"></a>I never tried this myself and honestly I don’t have a lot interest in trying it out but some of you may find it deliciously wonderful: How to download high quality Quicktime .MOV versions of iTunes Music Videos. (via)]]></description>
			<content:encoded><![CDATA[<a href="http://jeffmilner.com/index.php/2005/09/27/download-mov-versions-of-itunes-music-videos/" title="Download MOV versions of iTunes Music Videos"></a><p>I never tried this myself and honestly I don’t have a lot interest in trying it out but some of you may find it deliciously wonderful: <a href="http://www.uneasysilence.com/archive/2005/09/4270/">How to download high quality Quicktime .MOV versions of iTunes Music Videos</a>.</p>
<p>(<a href="http://www.waxy.org/links/archive/2005/09/index.shtml#27">via</a>) </p>
]]></content:encoded>
			<wfw:commentRss>http://jeffmilner.com/index.php/2005/09/27/download-mov-versions-of-itunes-music-videos/feed/</wfw:commentRss>
		<slash:comments>0</slash:comments>
		</item>
	</channel>
</rss>

