<?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>Internet Business &#38; Marketing Strategy - Andy Beard &#187; blogrolls</title>
	<atom:link href="http://andybeard.eu/tag/blogrolls/feed" rel="self" type="application/rss+xml" />
	<link>http://andybeard.eu</link>
	<description>Internet Marketing, Lead Acquisition, Online Business Strategy and Social Media with Original Opinion and Loads of Attitude</description>
	<lastBuildDate>Sun, 12 Feb 2012 06:16:17 +0000</lastBuildDate>
	<language>en</language>
	<sy:updatePeriod>hourly</sy:updatePeriod>
	<sy:updateFrequency>1</sy:updateFrequency>
	
		<item>
		<title>Exclusive: How To Get OPML For Google Reader</title>
		<link>http://andybeard.eu/1084/how-to-get-opml-for-google-reader.html</link>
		<comments>http://andybeard.eu/1084/how-to-get-opml-for-google-reader.html#comments</comments>
		<pubDate>Thu, 08 Nov 2007 12:39:36 +0000</pubDate>
		<dc:creator>Andy Beard</dc:creator>
				<category><![CDATA[blogging tips]]></category>
		<category><![CDATA[Google]]></category>
		<category><![CDATA[web 2.0]]></category>
		<category><![CDATA[blogrolls]]></category>
		<category><![CDATA[goog]]></category>
		<category><![CDATA[google reader]]></category>
		<category><![CDATA[opml]]></category>
		<category><![CDATA[rss]]></category>
		<category><![CDATA[RSS Subscriptions]]></category>

		<guid isPermaLink="false">http://andybeard.eu/2007/11/how-to-get-opml-for-google-reader.html</guid>
		<description><![CDATA[<p>This isn&#039;t a typical &#034;how To&#034; article, because currently this feature doesn&#039;t exist, but it could with just a little 20% time at Google.</p>
<p>Whilst you can download an OPML file to import into other feed readers, or to upload to the web in another location, you can&#039;t currently access it directly.</p>
<p>Whilst <a href="http://googlereader.blogspot.com/2007/11/attack-of-20ers.html">many</a>  <a href="http://www.techcrunch.com/2007/11/07/gmaps-come-to-the-gas-pump-and-google-reader-adds-blogrolls/">tech sites are lauding</a> the new blogroll for <a href="http://searchengineland.com/071107-084358.php">Google</a> Reader users, <a href="http://www.ginside.com/2007/1222/20-of-a-new-feature-for-google-reader/">it isn&#039;t really very useful</a>, and is without doubt extremely ugly compared to many widgets that use OPML, such as <a href="http://springwidgets.com/">SpringWidgets</a>, or even a <a href="http://googlesystem.blogspot.com/2007/08/blogroll-powered-by-google-reader.html">work-around previously available</a>.</p>
<h3>The Key To OPML</h3>]]></description>
			<content:encoded><![CDATA[
<div style="width:400px" class="important">
<h3>Now Updated <br />This Really Is How TO Get OPML For Google Reader</h3>
<p>
For full details see the second half of this article</div>
<p>This isn&#8217;t a typical &#8220;how To&#8221; article, because currently this feature doesn&#8217;t exist, but it could with just a little 20% time at Google.</p>
<p>Whilst you can download an OPML file to import into other feed readers, or to upload to the web in another location, you can&#8217;t currently access it directly.</p>
<p>Whilst <a href="http://googlereader.blogspot.com/2007/11/attack-of-20ers.html">many</a>  <a href="http://www.techcrunch.com/2007/11/07/gmaps-come-to-the-gas-pump-and-google-reader-adds-blogrolls/">tech sites are lauding</a> the new blogroll for <a href="http://searchengineland.com/071107-084358.php">Google</a> Reader users, <a href="http://www.ginside.com/2007/1222/20-of-a-new-feature-for-google-reader/">it isn&#8217;t really very useful</a>, and is without doubt extremely ugly compared to many widgets that use OPML, such as <a href="http://springwidgets.com/">SpringWidgets</a>, or even a <a href="http://googlesystem.blogspot.com/2007/08/blogroll-powered-by-google-reader.html">work-around previously available</a>.</p>
<h3>The Key To OPML With Google Reader</h3>
<p>It isn&#8217;t some secret hidden interface, but a person, <a href="http://www.steve-lacey.com/blogarchives/2007/11/my_second_20_pr.shtml">Steve Lacey who created the widget blogroll in his 20% time at Google</a>.</p>
<p>All you need to do is impress upon him that you really would like to do more with your collection of feeds in Google Reader and he might be persuaded to make some small additions to his existing code.</p>
<p>Steve already seems to be receptive to the idea, asking open questions. All that might be required is to make him a blogging superstar with lots of links and comments ;)</p>
<p>Google is <a href="http://radar.oreilly.com/archives/2007/11/opensocial_social_mashups.html">meant to be all about &#8220;Open&#8221; these days</a> but whilst <a href="http://andybeard.eu/2007/10/google-reputation-management-disaster-with-open-social.html">I think they have made some mistakes</a>, there is a chance for one aspect of our online presence to <b>become truly open&#8230; and useful.</b></p>
<p>If you want access to an OPML version of your subscriptions in Google Reader, directly from a server rather than having to export it, I suggest you raise your voices.</p>
<h3>Exclusive: How To Get OPML For Google Reader</h3>
<p>Sometimes you just have to ask for the right features at the right time, and doors open.</p>
<p><a href="http://blog.persistent.info/">Mihai Parparita</a> from the Google Reader team popped by and gave away the secret to what is currently an unannounced feature of Google Reader, that isn&#8217;t currently in the interface but can be accessed.</p>
<blockquote><p>
Actually, OPML export for blogrolls is already supported, we just couldn&#8217;t figure out where to put it in the UI. To get at it, look at an existing blogroll URL. For example, here is Steve&#8217;s:</p>
<pre class="brush: plain; title: ; notranslate">

http://www.google.com/reader/public/javascript-sub/user/06964043342831417138/label/my-feeds
</pre>
<p>To get at the OPML version, replace &#8220;javascript-sub&#8221; with &#8220;subscriptions&#8221;, giving you:</p>
<pre class="brush: plain; title: ; notranslate">

http://www.google.com/reader/public/subscriptions/user/06964043342831417138/label/my-feeds
</pre>
<p>Mihai Parparita<br />
Google Reader Engineer
</p></blockquote>
<p>Expect a more extensive tutorial to be added to this story in the next few hours.</p>
<h3>Update 2</h3>
<p>This doesn&#8217;t seem to be quite what we are looking for.</p>
<p>If you access the file via a web browser, you get to download your OPML as a file google-reader-subscriptions.xml</p>
<p>If you access using a web application, such as a tool to check headers, you see that it is being returned as an attachment.</p>
<blockquote><p>
1. Requesting: http://www.google.com/reader/public/subscriptions/user/06964043342831417138/label/my-feeds<br />
    GET /reader/public/subscriptions/user/06964043342831417138/label/my-feeds HTTP/1.1<br />
    Connection: Keep-Alive<br />
    Keep-Alive: 300<br />
    Accept:*/*<br />
    Host: www.google.com<br />
    Accept-Language: en-us<br />
    Accept-Encoding: gzip, deflate<br />
    User-Agent: Mozilla/5.0 (Windows; U; Windows NT 5.1; fr; rv:1.8) Gecko/20051111 Firefox/1.5</p>
<p>   Server Response: 200 OK<br />
    Content-Type: text/xml; charset=UTF-8<br />
    Content-Disposition: attachment;filename=google-reader-subscriptions.xml<br />
    Content-Encoding: gzip<br />
    Cache-Control: private<br />
    Date: Thu, 08 Nov 2007 17:21:19 GMT<br />
    Server: GFE/1.3<br />
    X-Cache: MISS from .<br />
    Via: 1.0 .:80 (squid)<br />
    Connection: close
</p></blockquote>
<p>This doesn&#8217;t work the same way as accessing your Technorati favorites as an opml file such as http://feeds.technorati.com/faves/AndyBeard?format=opml</p>
<blockquote><p>
1. Requesting: http://feeds.technorati.com/faves/AndyBeard?format=opml<br />
    GET /faves/AndyBeard?format=opml HTTP/1.1<br />
    Connection: Keep-Alive<br />
    Keep-Alive: 300<br />
    Accept:*/*<br />
    Host: feeds.technorati.com<br />
    Accept-Language: en-us<br />
    Accept-Encoding: gzip, deflate<br />
    User-Agent: Mozilla/5.0 (Windows; U; Windows NT 5.1; fr; rv:1.8) Gecko/20051111 Firefox/1.5</p>
<p>   Server Response: 200 OK<br />
    Date: Thu, 08 Nov 2007 17:05:33 GMT<br />
    Server: Apache<br />
    Set-Cookie: tvisitor=216.154.235.143.1194541533975889; path=/; expires=Tue, 06-Nov-12 17:05:33 GMT; domain=.technorati.com<br />
    Cache-Control: max-age=1800<br />
    Expires: Thu, 08 Nov 2007 17:35:37 GMT<br />
    Content-Type: text/xml; charset=UTF-8<br />
    Vary: Accept-Encoding,User-Agent<br />
    Content-Encoding: gzip<br />
    Transfer-Encoding: chunked
</p></blockquote>
<p>This isn&#8217;t the easily access OPML we are looking for</p>
<h3>Example With SpringWidgets</h3>
<p>Whilst the OPML will not work when creating a new RSS reader widget, you can force it to work with an existing widget.</p>
<p><object allowNetworking="all" allowScriptAccess="always" allowFullScreen="true" type="application/x-shockwave-flash" id="0" codebase="http://fpdownload.macromedia.com/pub/shockwave/cabs/flash/swflash.cab#version=7,0,0,0" width="200" height="418" align="middle" data="http://downloads.thespringbox.com/web/wrapper.php?file=Blogcatalog Community Feed.sbw"><param name="movie" value="http://downloads.thespringbox.com/web/wrapper.php?file=Blogcatalog Community Feed.sbw" /><param name="flashvars" value="param=http%3A%2F%2Fwww.google.com%2Freader%2Fpublic%2Fsubscriptions%2Fuser%2F06964043342831417138%2Flabel%2Fmy-feeds&#038;param_style_borderColor=000000&#038;param_style_brandUrl=&#038;partner_id=0&#038;wiid=0" /><param name="quality" value="high" /><param name="wmode" value="transparent" /><param name="allowNetworking" value="all" /><param name="allowScriptAccess" value="always" /><param name="allowFullScreen" value="true" /><param name="bgColor" value="0x000000" /><embed bgColor="0x000000" allowNetworking="all" allowFullScreen="true" allowScriptAccess="always" src="http://downloads.thespringbox.com/web/wrapper.php?file=Blogcatalog Community Feed.sbw" flashvars="param=http%3A%2F%2Fwww.google.com%2Freader%2Fpublic%2Fsubscriptions%2Fuser%2F06964043342831417138%2Flabel%2Fmy-feeds&#038;param_style_borderColor=000000&#038;param_style_brandUrl=&#038;partner_id=0&#038;wiid=0" quality="high" name="0" wmode="transparent" width="200" height="418" align="middle" type="application/x-shockwave-flash" pluginspage="http://www.macromedia.com/go/getflashplayer" /></object>
<div style="font:11px/12px arial;width:200px;margin-top:2px;"><b><a href="http://www.springwidgets.com/widgetize/10842/?param=http%3A%2F%2Fwww.google.com%2Freader%2Fpublic%2Fsubscriptions%2Fuser%2F06964043342831417138%2Flabel%2Fmy-feeds&#038;param_style_borderColor=000000&#038;param_style_brandUrl=&#038;width=200&#038;height=400&#038;wiid=0&#038;partner_id=0" target="_blank">Get this widget!</a></b></div>
<p>If you just provide the OPML file direct from Google Reader, it returns an error.</p>
<h3>Update 3</h3>
<p>Now comparing this with Bloglines, which also returns the OPML as an attachment</p>
<p>http://www.bloglines.com/export?id=AndrewBeard</p>
<p>Here are the headers returned</p>
<blockquote><p>
1. Requesting: http://www.bloglines.com/export?id=AndrewBeard<br />
    GET /export?id=AndrewBeard HTTP/1.1<br />
    Connection: Keep-Alive<br />
    Keep-Alive: 300<br />
    Accept:*/*<br />
    Host: www.bloglines.com<br />
    Accept-Language: en-us<br />
    Accept-Encoding: gzip, deflate<br />
    User-Agent: Mozilla/5.0 (Windows; U; Windows NT 5.1; fr; rv:1.8) Gecko/20051111 Firefox/1.5</p>
<p>   Server Response: 200 OK<br />
    Date: Thu, 08 Nov 2007 17:53:38 GMT<br />
    Server: Apache/2.2.6-dev (Unix) mod_ssl/2.2.6-dev OpenSSL/0.9.7a<br />
    P3P: CP=&#8221;NOI DSP COR NID CURa ADMa DEVa TAIa PSAa PSDa OUR STP IND UNI COM NAV INT STA&#8221;<br />
    Content-Disposition: attachment;filename=export.opml<br />
    Vary: User-Agent,Accept-Encoding<br />
    Content-Encoding: gzip<br />
    Content-Length: 472<br />
    Keep-Alive: timeout=300, max=100<br />
    Connection: Keep-Alive<br />
    Content-Type: text/xml; charset=utf-8
</p></blockquote>
<p>Lets compare the XML returned</p>
<p>Google returns the following</p>
<pre class="brush: plain; title: ; notranslate">
&lt;opml version=&quot;1.0&quot;&gt;
    &lt;head&gt;&lt;base href=&quot;http://www.google.com/reader/public/subscriptions/user/06964043342831417138/label/my-feeds&quot;&gt;
        &lt;title&gt;&quot;my-feeds&quot; subscriptions via Steve Lacey in Google Reader&lt;/title&gt;
    &lt;/head&gt;
</pre>
<p>Here is the Bloglines Header</p>
<pre class="brush: plain; title: ; notranslate">
&lt;?xml version=&quot;1.0&quot; encoding=&quot;utf-8&quot;?&gt;
&lt;opml version=&quot;1.1&quot;&gt;
&lt;head&gt;&lt;base href=&quot;http://www.bloglines.com/export?id=AndrewBeard&quot;&gt;
    &lt;title&gt;Bloglines Subscriptions&lt;/title&gt;
    &lt;dateCreated&gt;Thu, 08 Nov 2007 17:58:31 GMT&lt;/dateCreated&gt;
    &lt;ownerName&gt;AndrewBeard&lt;/ownerName&gt;
&lt;/head&gt;
</pre>
<p>Thus there is a difference in the headers being returned</p>
<p>If you add the following</p>
<pre class="brush: plain; title: ; notranslate">
&lt;?xml version=&quot;1.0&quot; encoding=&quot;utf-8&quot;?&gt;
</pre>
<p>You get a working OPML feed, here is an example<br />
<a href="http://andybeard.eu/google-reader-test-opml.xml">http://andybeard.eu/google-reader-test-opml.xml</a></p>
<div class="topsy_widget_data topsy_theme_brick-red" style="float: right;margin-left: 0.75em; background: url(data:,%7B%20%22url%22%3A%20%22http%253A%252F%252Fandybeard.eu%252F1084%252Fhow-to-get-opml-for-google-reader.html%22%2C%20%22style%22%3A%20%22small%22%2C%20%22title%22%3A%20%22Exclusive%3A%20How%20To%20Get%20OPML%20For%20Google%20Reader%22%20%7D);"></div>


	Tags: <a href="http://andybeard.eu/tag/blogrolls" title="blogrolls" rel="tag">blogrolls</a>, <a href="http://andybeard.eu/tag/goog" title="goog" rel="tag">goog</a>, <a href="http://andybeard.eu/tag/google" title="Google" rel="tag">Google</a>, <a href="http://andybeard.eu/tag/google-reader" title="google reader" rel="tag">google reader</a>, <a href="http://andybeard.eu/tag/opml" title="opml" rel="tag">opml</a>, <a href="http://andybeard.eu/tag/rss" title="rss" rel="tag">rss</a>, <a href="http://andybeard.eu/tag/rss-subscriptions" title="RSS Subscriptions" rel="tag">RSS Subscriptions</a><br />
]]></content:encoded>
			<wfw:commentRss>http://andybeard.eu/1084/how-to-get-opml-for-google-reader.html/feed</wfw:commentRss>
		<slash:comments>6</slash:comments>
		</item>
	</channel>
</rss>

<!-- Performance optimized by W3 Total Cache. Learn more: http://www.w3-edge.com/wordpress-plugins/

Page Caching using disk: basic
Database Caching 30/43 queries in 0.010 seconds using disk: basic
Object Caching 606/625 objects using disk: basic
Content Delivery Network via cdn5.andybeard.name

Served from: andybeard.eu @ 2012-02-13 05:49:53 -->
