<?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>Flying memes &#187; scrubyt</title>
	<atom:link href="http://sandropaganotti.com/tag/scrubyt/feed/" rel="self" type="application/rss+xml" />
	<link>http://sandropaganotti.com</link>
	<description>Just another WordPress weblog</description>
	<lastBuildDate>Fri, 23 Mar 2012 19:07:23 +0000</lastBuildDate>
	<language>en</language>
	<sy:updatePeriod>hourly</sy:updatePeriod>
	<sy:updateFrequency>1</sy:updateFrequency>
	<generator>http://wordpress.org/?v=3.3.1</generator>
		<item>
		<title>Nabaztag e Playlist.com</title>
		<link>http://sandropaganotti.com/2008/12/21/nabaztag-e-playlistcom/</link>
		<comments>http://sandropaganotti.com/2008/12/21/nabaztag-e-playlistcom/#comments</comments>
		<pubDate>Sun, 21 Dec 2008 23:26:17 +0000</pubDate>
		<dc:creator>admin</dc:creator>
				<category><![CDATA[Librerie]]></category>
		<category><![CDATA[api]]></category>
		<category><![CDATA[Nabaztag]]></category>
		<category><![CDATA[playlist.com]]></category>
		<category><![CDATA[scrubyt]]></category>

		<guid isPermaLink="false">http://sandropaganotti.com/?p=80</guid>
		<description><![CDATA[Per chi ancora non conoscesse i due termini che compongono il titolo di questo articolo ecco una breve introduzione: Playlist.com Questo sito utilizza un motore di ricerca interno per indicizzare i file mp3 che trova nella rete, tali file vengono poi categorizzati utilizzando le informazioni disponibili (tag mp3, ecc..). Utilizzando una form di ricerca è [...]]]></description>
			<content:encoded><![CDATA[<p>Per chi ancora non conoscesse i due termini che compongono il titolo di questo articolo ecco una breve introduzione:</p>
<p><span id="more-80"></span></p>
<p><strong><a href="http://www.playlist.com" target="_blank">Playlist.com<br />
</a></strong>Questo sito utilizza un motore di ricerca interno per indicizzare i file mp3 che trova nella rete, tali file vengono poi categorizzati utilizzando le informazioni disponibili (tag mp3, ecc..). Utilizzando una form di ricerca è possibile ricercare tra i file indicizzati, ascoltarli e costruirsi una propria playlist che si può poi condividere con altre persone.</p>
<p><strong><a href="http://www.nabaztag.com" target="_blank">NabazTag</a></strong><br />
Il nabaztag è un gadget elettronico, dalla forma di un coniglio, capace di connettersi alla rete wireless domestica di intrattenere ospiti e residenti con tutta una serie di servizi vocali (text-to-speech, podcast, lettura di messaggi, email ed RSS, ecc.. ). Violet, la casa produttrice, ha ben pensato di mettere a disposizione di eventuali sviluppatori interessati <a href="http://doc.nabaztag.com/api/home.html" target="_blank">delle API con le quali interagire col coniglio</a>.</p>
<p><strong><a href="http://github.com/sandropaganotti/nabaztag-command-line-tool/tree/master">Nabaztag Command Line Tool</a><br />
</strong>Ho creato (<a href="http://github.com/sandropaganotti/nabaztag-command-line-tool/tree/master">e caricato su github</a>) uno script in Ruby che, dato l&#8217;identificativo di una playlist di playlist.com, si interfaccia con le API del nabaztag e, utilizzando apposite funzioni, fa in modo che il coniglio esegua l&#8217;intera playlist selezionata.</p>
<p>Fulcro di questo piccolissimo programma è una bellissima libreria di cui ho sentito parlare poco tempo fa: <a href="http://www.scrubyt.org">Scrubyt</a>. Scrubyt serve essenzialmente ad interagire con il web, questo comprende parsing di pagine HTML ma anche compilazione di form e click su link.</p>
<p>Per darvi un assaggio delle potenzialità di questa libreria vi allego il codice che ho usato per recupeare le informazioni sull&#8217;url dei vari file mp3, questi sono i passi:</p>
<ol>
<li>recuperare il file xml dall&#8217;indirizzo view.playlist.com/[id_playlist]/asx</li>
<li>estrarre per ogni nodo &#8216;entry&#8217; l&#8217;attributo href del tag ref</li>
</ol>
<pre><code class="ruby">
      playlist = Scrubyt::Extractor.define do
          fetch "http://view.playlist.com/#{params[0]}/asx"
          ele "//entry//ref" do
            mp3 "href", :type=&gt;:attribute
          end
      end
</code></pre>
<p>A questo punto nella variabile &#8216;playlist&#8217; avrò un elenco di hash ognuno di essi nella forma :mp3 =&gt; &#8216;url&#8217;.</p>
]]></content:encoded>
			<wfw:commentRss>http://sandropaganotti.com/2008/12/21/nabaztag-e-playlistcom/feed/</wfw:commentRss>
		<slash:comments>0</slash:comments>
		</item>
	</channel>
</rss>

