Mercurial > feed2twitter
changeset 3:ba8e2dfe2eaf
hg beginning
author | Walter Cruz <walter@waltercruz.com> |
---|---|
date | Fri, 16 May 2008 16:12:05 -0300 |
parents | |
children | ba17f1f62e8f |
files | rss2twitter/rss2twitter.egg-info/PKG-INFO rss2twitter/rss2twitter.egg-info/SOURCES.txt rss2twitter/rss2twitter.egg-info/dependency_links.txt rss2twitter/rss2twitter.egg-info/entry_points.txt rss2twitter/rss2twitter.egg-info/paster_plugins.txt rss2twitter/rss2twitter.egg-info/top_level.txt rss2twitter/rss2twitter.egg-info/zip-safe rss2twitter/rss2twitter/__init__.py rss2twitter/rss2twitter/readrss.py rss2twitter/rss2twitter/tinyurl.py rss2twitter/rss2twittermonitor.py rss2twitter/setup.cfg rss2twitter/setup.py rss2twitter/tests/mocks/slashdot.xml rss2twitter/tests/teste_readrss.py rss2twitter/tests/teste_tinyur.py |
diffstat | 16 files changed, 458 insertions(+), 0 deletions(-) [+] |
line wrap: on
line diff
--- /dev/null Thu Jan 01 00:00:00 1970 +0000 +++ b/rss2twitter/rss2twitter.egg-info/PKG-INFO Fri May 16 16:12:05 2008 -0300 @@ -0,0 +1,10 @@ +Metadata-Version: 1.0 +Name: rss2twitter +Version: 0.1dev +Summary: Publish your feed items to twitter +Home-page: UNKNOWN +Author: Walter Cruz +Author-email: walte@waltercruz.com +License: UNKNOWN +Description: UNKNOWN +Platform: UNKNOWN
--- /dev/null Thu Jan 01 00:00:00 1970 +0000 +++ b/rss2twitter/rss2twitter.egg-info/SOURCES.txt Fri May 16 16:12:05 2008 -0300 @@ -0,0 +1,9 @@ +setup.cfg +setup.py +rss2twitter/__init__.py +rss2twitter.egg-info/PKG-INFO +rss2twitter.egg-info/SOURCES.txt +rss2twitter.egg-info/dependency_links.txt +rss2twitter.egg-info/entry_points.txt +rss2twitter.egg-info/top_level.txt +rss2twitter.egg-info/zip-safe \ No newline at end of file
--- /dev/null Thu Jan 01 00:00:00 1970 +0000 +++ b/rss2twitter/rss2twitter.egg-info/dependency_links.txt Fri May 16 16:12:05 2008 -0300 @@ -0,0 +1,1 @@ +
--- /dev/null Thu Jan 01 00:00:00 1970 +0000 +++ b/rss2twitter/rss2twitter.egg-info/entry_points.txt Fri May 16 16:12:05 2008 -0300 @@ -0,0 +1,3 @@ + + # -*- Entry points: -*- + \ No newline at end of file
--- /dev/null Thu Jan 01 00:00:00 1970 +0000 +++ b/rss2twitter/rss2twitter.egg-info/paster_plugins.txt Fri May 16 16:12:05 2008 -0300 @@ -0,0 +1,1 @@ +PasteScript
--- /dev/null Thu Jan 01 00:00:00 1970 +0000 +++ b/rss2twitter/rss2twitter.egg-info/top_level.txt Fri May 16 16:12:05 2008 -0300 @@ -0,0 +1,1 @@ +rss2twitter
--- /dev/null Thu Jan 01 00:00:00 1970 +0000 +++ b/rss2twitter/rss2twitter.egg-info/zip-safe Fri May 16 16:12:05 2008 -0300 @@ -0,0 +1,1 @@ +
--- /dev/null Thu Jan 01 00:00:00 1970 +0000 +++ b/rss2twitter/rss2twitter/__init__.py Fri May 16 16:12:05 2008 -0300 @@ -0,0 +1,60 @@ +from __future__ import with_statement +import feedparser, pickle, os, sys, twitter, urllib +from ConfigParser import ConfigParser, NoOptionError +import readrss +import time +from pprint import pprint +from tinyurl import tiny +from httplib import BadStatusLine + + +class RSS2Twitter(object): + def __init__(self, url, username, passwd): + self.url=url + self.username=username + self.passwd=passwd + self.twApi=twitter.Api(username=self.username, password=self.passwd) + self.rss = readrss.parse(url) + + def twitIt(self, items): + oldItems=pItems=0 + for it in list(items): + txt=it["title"][0:114] +" "+tiny(it["link"]) + #print txt + try: + status = self.twApi.PostUpdate(txt) + self.rss.updateLastRead(it) + print "status: ", status.text + time.sleep(5) + except BadStatusLine: + pass + + def update(self): + lastread = self.rss.getlastRead() + if not lastread: + self.twitIt(reversed(self.rss.feed['items'][:5])) + self.rss.updateLastRead() + else: + lista = [item for item in self.rss.feed['items'] if item['updated_parsed'] > lastread] + print(lista) + self.twitIt(reversed(lista[:5])) + self.rss.updateLastRead() + + +def update(): + c = ConfigParser() + configfile =os.path.expanduser('~/.rss2twitter/default.cfg') + try: + with open(configfile, 'r') as fd: + c.readfp(fd) + except IOError: + print >>sys.stderr, "File %s not found" % configfile + sys.exit(2) + + url = c.get("global", "url").strip() + username = c.get("global", "username").strip() + password = c.get("global", "password").strip() + + + rss2tw = RSS2Twitter(url,username,password) + rss2tw.update()
--- /dev/null Thu Jan 01 00:00:00 1970 +0000 +++ b/rss2twitter/rss2twitter/readrss.py Fri May 16 16:12:05 2008 -0300 @@ -0,0 +1,38 @@ +import feedparser, pickle, time +import os.path +from os import mkdir +import md5 + +class parse(object): + + def __init__(self,feed_url): + self.feed_url = feed_url + self.feed = feedparser.parse(feed_url) + + def getStampFileName(self): + self.md5name = md5.md5(self.feed_url).hexdigest() + self.directory = os.path.expanduser("~/.rss2twitter/") + self.filename = self.directory + self.md5name + + def updateLastRead(self,item=None): + self.getStampFileName() + if not os.path.exists(self.directory): + mkdir(directory) + output = open(self.filename, 'wb') + if not item: + pickle.dump(self.feed['items'][0]['updated_parsed'], output) + else: + pickle.dump(item['updated_parsed'], output) + output.close() + + def getlastRead(self): + self.getStampFileName() + try: + pick = open(self.filename, 'rb') + except IOError: + return False + last_read = pickle.load(pick) + return last_read + + +
--- /dev/null Thu Jan 01 00:00:00 1970 +0000 +++ b/rss2twitter/rss2twitter/tinyurl.py Fri May 16 16:12:05 2008 -0300 @@ -0,0 +1,17 @@ +import urllib + +def tiny(url): + try: + data = urllib.urlencode(dict(url=url, source="RSS2Twit")) + encodedurl="http://www.tinyurl.com/api-create.php?"+data + instream=urllib.urlopen(encodedurl) + ret=instream.read() + instream.close() + + if len(ret)==0: + return url + + return ret + + except IOError, e: + raise "urllib error."
--- /dev/null Thu Jan 01 00:00:00 1970 +0000 +++ b/rss2twitter/rss2twittermonitor.py Fri May 16 16:12:05 2008 -0300 @@ -0,0 +1,8 @@ +import rss2twitter +import time + +if __name__=="__main__": + while 1: + rss2twitter.update() + time.sleep(3600) +
--- /dev/null Thu Jan 01 00:00:00 1970 +0000 +++ b/rss2twitter/setup.cfg Fri May 16 16:12:05 2008 -0300 @@ -0,0 +1,3 @@ +[egg_info] +tag_build = dev +tag_svn_revision = true
--- /dev/null Thu Jan 01 00:00:00 1970 +0000 +++ b/rss2twitter/setup.py Fri May 16 16:12:05 2008 -0300 @@ -0,0 +1,26 @@ +from setuptools import setup, find_packages +import sys, os + +version = '0.1' + +setup(name='rss2twitter', + version=version, + description="Publish your feed items to twitter", + long_description="""\ +""", + classifiers=[], # Get strings from http://pypi.python.org/pypi?%3Aaction=list_classifiers + keywords='', + author='Walter Cruz', + author_email='walte@waltercruz.com', + url='', + license='', + packages=find_packages(exclude=['ez_setup', 'examples', 'tests']), + include_package_data=True, + zip_safe=True, + install_requires=[ + # -*- Extra requirements: -*- + ], + entry_points=""" + # -*- Entry points: -*- + """, + )
--- /dev/null Thu Jan 01 00:00:00 1970 +0000 +++ b/rss2twitter/tests/mocks/slashdot.xml Fri May 16 16:12:05 2008 -0300 @@ -0,0 +1,263 @@ +<?xml version="1.0" encoding="UTF-8"?> +<rdf:RDF xmlns:rdf="http://www.w3.org/1999/02/22-rdf-syntax-ns#" xmlns="http://purl.org/rss/1.0/" xmlns:slash="http://purl.org/rss/1.0/modules/slash/" xmlns:taxo="http://purl.org/rss/1.0/modules/taxonomy/" xmlns:dc="http://purl.org/dc/elements/1.1/" xmlns:syn="http://purl.org/rss/1.0/modules/syndication/" xmlns:admin="http://webns.net/mvcb/" xmlns:feedburner="http://rssnamespace.org/feedburner/ext/1.0"> + +<channel rdf:about="http://slashdot.org/"> +<title>Slashdot</title> +<link>http://slashdot.org/</link> +<description>News for nerds, stuff that matters</description> +<dc:language>en-us</dc:language> +<dc:rights>Copyright 1997-2008, SourceForge, Inc. All Rights Reserved.</dc:rights> +<dc:date>2008-05-12T17:20:24+00:00</dc:date> +<dc:publisher>SourceForge, Inc.</dc:publisher> +<dc:creator>help@slashdot.org</dc:creator> +<dc:subject>Technology</dc:subject> +<syn:updatePeriod>hourly</syn:updatePeriod> +<syn:updateFrequency>1</syn:updateFrequency> +<syn:updateBase>1970-01-01T00:00+00:00</syn:updateBase> +<items> + <rdf:Seq> + <rdf:li rdf:resource="http://yro.slashdot.org/article.pl?sid=08/05/12/1633251&from=rss" /> + <rdf:li rdf:resource="http://tech.slashdot.org/article.pl?sid=08/05/12/1525257&from=rss" /> + <rdf:li rdf:resource="http://tech.slashdot.org/article.pl?sid=08/05/12/1522221&from=rss" /> + <rdf:li rdf:resource="http://science.slashdot.org/article.pl?sid=08/05/12/1419204&from=rss" /> + <rdf:li rdf:resource="http://linux.slashdot.org/article.pl?sid=08/05/12/1325203&from=rss" /> + <rdf:li rdf:resource="http://science.slashdot.org/article.pl?sid=08/05/12/1256205&from=rss" /> + <rdf:li rdf:resource="http://it.slashdot.org/article.pl?sid=08/05/12/1219241&from=rss" /> + <rdf:li rdf:resource="http://hardware.slashdot.org/article.pl?sid=08/05/12/0121243&from=rss" /> + <rdf:li rdf:resource="http://tech.slashdot.org/article.pl?sid=08/05/11/192246&from=rss" /> + <rdf:li rdf:resource="http://news.slashdot.org/article.pl?sid=08/05/11/2026230&from=rss" /> + <rdf:li rdf:resource="http://entertainment.slashdot.org/article.pl?sid=08/05/12/0055218&from=rss" /> + <rdf:li rdf:resource="http://tech.slashdot.org/article.pl?sid=08/05/12/0047253&from=rss" /> + <rdf:li rdf:resource="http://developers.slashdot.org/article.pl?sid=08/05/11/219231&from=rss" /> + <rdf:li rdf:resource="http://it.slashdot.org/article.pl?sid=08/05/11/2044216&from=rss" /> + <rdf:li rdf:resource="http://tech.slashdot.org/article.pl?sid=08/05/11/1939240&from=rss" /> + </rdf:Seq> +</items> +<image rdf:resource="http://images.slashdot.org/topics/topicslashdot.gif" /> +<textinput rdf:resource="http://slashdot.org/search.pl" /> +</channel> + +<image rdf:about="http://images.slashdot.org/topics/topicslashdot.gif"> +<title>Slashdot</title> +<url>http://images.slashdot.org/topics/topicslashdot.gif</url> +<link>http://slashdot.org/</link> +</image> + +<item rdf:about="http://yro.slashdot.org/article.pl?sid=08/05/12/1633251&from=rss"> +<title>To Curb Truancy, Dallas Tries Electronic Monitoring</title> +<link>http://rss.slashdot.org/~r/Slashdot/slashdot/~3/288826658/article.pl</link> +<description>The New York Times is reporting that a school district in Texas is trying a new angle in combating truancy. Instead of punishing students with detention they are tagging them with electronic monitoring devices. "But the future of the Dallas program is uncertain. Mr. Pottinger's company, the Center for Criminal Justice Solutions, is seeking $365,000 from the county to expand the program beyond Bryan Adams. But the effort has met with political opposition after a state senator complained that ankle cuffs used in an earlier version were reminiscent of slave chains. Dave Leis, a spokesman for NovaTracker, which makes the system used in Dallas, said electronic monitoring did not have to be punitive. 'You can paint this thing as either Big Brother, or this is a device that connects you to a buddy who wants to keep you safe and help you graduate.'"<p><a href="http://yro.slashdot.org/article.pl?sid=08/05/12/1633251&amp;from=rss"><img src="http://slashdot.org/slashdot-it.pl?from=rss&amp;op=image&amp;style=h0&amp;sid=08/05/12/1633251"></a></p><p><a href="http://yro.slashdot.org/article.pl?sid=08/05/12/1633251&amp;from=rss">Read more of this story</a> at Slashdot.</p> +<p><a href="http://rss.slashdot.org/~a/Slashdot/slashdot?a=SdQWVl"><img src="http://rss.slashdot.org/~a/Slashdot/slashdot?i=SdQWVl" border="0"></img></a></p><img src="http://rss.slashdot.org/~r/Slashdot/slashdot/~4/288826658" height="1" width="1"/></description> +<dc:creator>ScuttleMonkey</dc:creator> +<dc:date>2008-05-12T17:15:00+00:00</dc:date> +<dc:subject>education</dc:subject> +<slash:department>kids-aren't-people</slash:department> +<slash:section>yro</slash:section> +<slash:comments>4</slash:comments> +<slash:hit_parade>4,3,3,3,2,0,0</slash:hit_parade> +<feedburner:origLink>http://yro.slashdot.org/article.pl?sid=08/05/12/1633251&from=rss</feedburner:origLink></item> + +<item rdf:about="http://tech.slashdot.org/article.pl?sid=08/05/12/1525257&from=rss"> +<title>USAF Considers Creation of Military Botnet</title> +<link>http://rss.slashdot.org/~r/Slashdot/slashdot/~3/288799908/article.pl</link> +<description>sowjetarschbajazzo writes "Air Force Col. Charles W. Williamson III believes that the United States military should maintain its own botnet, both as a deterrent towards those who would attempt to DDoS government networks, and an offensive weapon to be used against the networks of unfriendly nations, criminal groups, or terrorist organizations. "Some people would fear the possibility of botnet attacks on innocent parties. If the botnet is used in a strictly offensive manner, civilian computers may be attacked, but only if the enemy compels us. The U.S. will perform the same target preparation as for traditional targets and respect the law of armed conflict as Defense Department policy requires by analyzing necessity, proportionality and distinction among military, dual-use or civilian targets. But neither the law of armed conflict nor common sense would allow belligerents to hide behind the skirts of its civilians. If the enemy is using civilian computers in his country so as to cause us harm, then we may attack them." What does Slashdot think of this proposal?"<p><a href="http://tech.slashdot.org/article.pl?sid=08/05/12/1525257&amp;from=rss"><img src="http://slashdot.org/slashdot-it.pl?from=rss&amp;op=image&amp;style=h0&amp;sid=08/05/12/1525257"></a></p><p><a href="http://tech.slashdot.org/article.pl?sid=08/05/12/1525257&amp;from=rss">Read more of this story</a> at Slashdot.</p> +<p><a href="http://rss.slashdot.org/~a/Slashdot/slashdot?a=zuIFh2"><img src="http://rss.slashdot.org/~a/Slashdot/slashdot?i=zuIFh2" border="0"></img></a></p><img src="http://rss.slashdot.org/~r/Slashdot/slashdot/~4/288799908" height="1" width="1"/></description> +<dc:creator>CmdrTaco</dc:creator> +<dc:date>2008-05-12T16:24:00+00:00</dc:date> +<dc:subject>military</dc:subject> +<slash:department>all-to-steal-wow-gold</slash:department> +<slash:section>tech</slash:section> +<slash:comments>107</slash:comments> +<slash:hit_parade>107,107,89,63,19,11,5</slash:hit_parade> +<feedburner:origLink>http://tech.slashdot.org/article.pl?sid=08/05/12/1525257&from=rss</feedburner:origLink></item> + +<item rdf:about="http://tech.slashdot.org/article.pl?sid=08/05/12/1522221&from=rss"> +<title>An Inside Look at the Great Firewall of China</title> +<link>http://rss.slashdot.org/~r/Slashdot/slashdot/~3/288769954/article.pl</link> +<description>alphadogg writes "An interview with James Fallows, national correspondent for The Atlantic Monthly, who has experienced "The Great Firewall of China" firsthand, an experience people from around the world will share this summer when the Olympics comes to that country. Based in Beijing, Fallows has researched the underlying technology that the Chinese use for Internet censorship. One good thing to know: With VPNs and proxies, you can get around it pretty easily." Will these Olympics lead to a more free China, or is it just corporate pandering?<p><a href="http://tech.slashdot.org/article.pl?sid=08/05/12/1522221&amp;from=rss"><img src="http://slashdot.org/slashdot-it.pl?from=rss&amp;op=image&amp;style=h0&amp;sid=08/05/12/1522221"></a></p><p><a href="http://tech.slashdot.org/article.pl?sid=08/05/12/1522221&amp;from=rss">Read more of this story</a> at Slashdot.</p> +<p><a href="http://rss.slashdot.org/~a/Slashdot/slashdot?a=bz5BMB"><img src="http://rss.slashdot.org/~a/Slashdot/slashdot?i=bz5BMB" border="0"></img></a></p><img src="http://rss.slashdot.org/~r/Slashdot/slashdot/~4/288769954" height="1" width="1"/></description> +<dc:creator>CmdrTaco</dc:creator> +<dc:date>2008-05-12T15:40:00+00:00</dc:date> +<dc:subject>internet</dc:subject> +<slash:department>must-protect-general's-secret-recipe</slash:department> +<slash:section>tech</slash:section> +<slash:comments>53</slash:comments> +<slash:hit_parade>53,51,46,34,13,6,3</slash:hit_parade> +<feedburner:origLink>http://tech.slashdot.org/article.pl?sid=08/05/12/1522221&from=rss</feedburner:origLink></item> + +<item rdf:about="http://science.slashdot.org/article.pl?sid=08/05/12/1419204&from=rss"> +<title>SMS 4x More Expensive Than Data From Hubble</title> +<link>http://rss.slashdot.org/~r/Slashdot/slashdot/~3/288746475/article.pl</link> +<description>paradoxSpirit writes "Physorg has a paper comparing the cost of text messaging versus the cost of getting data from Hubble Space Telescope. From the article: 'The maximum size for a text message is 160 characters, which takes 140 bytes because there are only 7 bits per character in the text messaging system, and we assume the average price for a text message is 5p. There are 1,048,576 bytes in a megabyte, so that's 1 million/140 = 7490 text messages to transmit one megabyte. At 5p each, that's &pound;374.49 [$732.95] per MB &mdash; or about 4.4 times more expensive than the 'most pessimistic' estimate for Hubble Space Telescope transmission costs." "Hubble is by no means a cheap mission &mdash; but the mobile phone text costs were pretty astronomical!""<p><a href="http://science.slashdot.org/article.pl?sid=08/05/12/1419204&amp;from=rss"><img src="http://slashdot.org/slashdot-it.pl?from=rss&amp;op=image&amp;style=h0&amp;sid=08/05/12/1419204"></a></p><p><a href="http://science.slashdot.org/article.pl?sid=08/05/12/1419204&amp;from=rss">Read more of this story</a> at Slashdot.</p> +<p><a href="http://rss.slashdot.org/~a/Slashdot/slashdot?a=b2IDyy"><img src="http://rss.slashdot.org/~a/Slashdot/slashdot?i=b2IDyy" border="0"></img></a></p><img src="http://rss.slashdot.org/~r/Slashdot/slashdot/~4/288746475" height="1" width="1"/></description> +<dc:creator>CmdrTaco</dc:creator> +<dc:date>2008-05-12T15:00:00+00:00</dc:date> +<dc:subject>cellphones</dc:subject> +<slash:department>and-much-less-space-porn</slash:department> +<slash:section>science</slash:section> +<slash:comments>198</slash:comments> +<slash:hit_parade>198,195,162,126,37,20,11</slash:hit_parade> +<feedburner:origLink>http://science.slashdot.org/article.pl?sid=08/05/12/1419204&from=rss</feedburner:origLink></item> + +<item rdf:about="http://linux.slashdot.org/article.pl?sid=08/05/12/1325203&from=rss"> +<title>Microsoft 'Shared Source' Attempts to Hijack FOSS</title> +<link>http://rss.slashdot.org/~r/Slashdot/slashdot/~3/288720837/article.pl</link> +<description>aacc1313 writes "An article that details how Open Source is being hijacked by Microsoft and the sort via 'Shared Source' licenses and how Open Source licenses have become so much more confusing. From the article, "The confusion stems from the fact that Microsoft's 'shared source' program includes three proprietary licenses as well, whose names are similar in some ways to the open-source licenses. Thus, while the Microsoft Reciprocal License has been approved by OSI, the Microsoft Limited Reciprocal License (Ms-LRL) is not, because it allows users to modify and redistribute the software only on the Windows platform" and "The 'shared source' program was and is Microsoft's way of fighting the open source world, allowing customers to inspect Microsoft source code without giving those customers the right to modify or redistribute the code. In other words, "shared source" is not open source, and shouldn't be confused with it.""<p><a href="http://linux.slashdot.org/article.pl?sid=08/05/12/1325203&amp;from=rss"><img src="http://slashdot.org/slashdot-it.pl?from=rss&amp;op=image&amp;style=h0&amp;sid=08/05/12/1325203"></a></p><p><a href="http://linux.slashdot.org/article.pl?sid=08/05/12/1325203&amp;from=rss">Read more of this story</a> at Slashdot.</p> +<p><a href="http://rss.slashdot.org/~a/Slashdot/slashdot?a=OwfV12"><img src="http://rss.slashdot.org/~a/Slashdot/slashdot?i=OwfV12" border="0"></img></a></p><img src="http://rss.slashdot.org/~r/Slashdot/slashdot/~4/288720837" height="1" width="1"/></description> +<dc:creator>CmdrTaco</dc:creator> +<dc:date>2008-05-12T14:14:00+00:00</dc:date> +<dc:subject>microsoft</dc:subject> +<slash:department>thats-what-we-keep-saying</slash:department> +<slash:section>linux</slash:section> +<slash:comments>158</slash:comments> +<slash:hit_parade>158,153,130,106,32,12,5</slash:hit_parade> +<feedburner:origLink>http://linux.slashdot.org/article.pl?sid=08/05/12/1325203&from=rss</feedburner:origLink></item> + +<item rdf:about="http://science.slashdot.org/article.pl?sid=08/05/12/1256205&from=rss"> +<title>Where Are The Space Advocates?</title> +<link>http://rss.slashdot.org/~r/Slashdot/slashdot/~3/288695179/article.pl</link> +<description>QuantumG writes "Greg Zsidisin appeared on The Space Show today to ask Where Are The Space Advocates?. For the first time in decades Space is once again a political issue with all four major presidential candidates having something to say about space policy and yet nothing is being heard from space advocates. As we enter a new "Space Nexus" like we did after Apollo, now is a critical time to let your representatives know how you feel about space exploration, and yet no-one has anything to say." The show itself is a podcast if you want to give it a listen. Personally I'm hoping that this election puts space exploration back in the public consciousness- Apollo inspired a generation to learn math and science. I want my kid to be inspired by something bigger than that. And as some readers have noted- there are 3 candidates left (and really only two) so the submitter is probably high.<p><a href="http://science.slashdot.org/article.pl?sid=08/05/12/1256205&amp;from=rss"><img src="http://slashdot.org/slashdot-it.pl?from=rss&amp;op=image&amp;style=h0&amp;sid=08/05/12/1256205"></a></p><p><a href="http://science.slashdot.org/article.pl?sid=08/05/12/1256205&amp;from=rss">Read more of this story</a> at Slashdot.</p> +<p><a href="http://rss.slashdot.org/~a/Slashdot/slashdot?a=X3dyB8"><img src="http://rss.slashdot.org/~a/Slashdot/slashdot?i=X3dyB8" border="0"></img></a></p><img src="http://rss.slashdot.org/~r/Slashdot/slashdot/~4/288695179" height="1" width="1"/></description> +<dc:creator>CmdrTaco</dc:creator> +<dc:date>2008-05-12T13:33:00+00:00</dc:date> +<dc:subject>space</dc:subject> +<slash:department>in-my-house</slash:department> +<slash:section>science</slash:section> +<slash:comments>168</slash:comments> +<slash:hit_parade>168,165,134,106,37,17,9</slash:hit_parade> +<feedburner:origLink>http://science.slashdot.org/article.pl?sid=08/05/12/1256205&from=rss</feedburner:origLink></item> + +<item rdf:about="http://it.slashdot.org/article.pl?sid=08/05/12/1219241&from=rss"> +<title>DVD Porn Viruses Ravage US Soldiers' Computers</title> +<link>http://rss.slashdot.org/~r/Slashdot/slashdot/~3/288665719/article.pl</link> +<description>stevegee58 writes "Tom Ricks' Inbox in the Sunday Washington Post reported that bootleg DVDs purchased in Iraqi markets ("souks") are frequently infected with viruses. Iraqi soldiers were affected as well; electronic interaction between Iraqi and US soldiers frequently resulted in a corresponding exchange of viruses from these infected DVDs."<p><a href="http://it.slashdot.org/article.pl?sid=08/05/12/1219241&amp;from=rss"><img src="http://slashdot.org/slashdot-it.pl?from=rss&amp;op=image&amp;style=h0&amp;sid=08/05/12/1219241"></a></p><p><a href="http://it.slashdot.org/article.pl?sid=08/05/12/1219241&amp;from=rss">Read more of this story</a> at Slashdot.</p> +<p><a href="http://rss.slashdot.org/~a/Slashdot/slashdot?a=CogNBf"><img src="http://rss.slashdot.org/~a/Slashdot/slashdot?i=CogNBf" border="0"></img></a></p><img src="http://rss.slashdot.org/~r/Slashdot/slashdot/~4/288665719" height="1" width="1"/></description> +<dc:creator>CmdrTaco</dc:creator> +<dc:date>2008-05-12T12:48:00+00:00</dc:date> +<dc:subject>security</dc:subject> +<slash:department>oh-the-humanity</slash:department> +<slash:section>it</slash:section> +<slash:comments>274</slash:comments> +<slash:hit_parade>274,267,213,156,67,45,34</slash:hit_parade> +<feedburner:origLink>http://it.slashdot.org/article.pl?sid=08/05/12/1219241&from=rss</feedburner:origLink></item> + +<item rdf:about="http://hardware.slashdot.org/article.pl?sid=08/05/12/0121243&from=rss"> +<title>Sailing Robots To Attempt Atlantic Crossing</title> +<link>http://rss.slashdot.org/~r/Slashdot/slashdot/~3/288647181/article.pl</link> +<description>Roland Piquepaille writes "The Times of London reports that seven robotic craft will compete in a race across the Atlantic Ocean in October 2008. One of them, 'Pinta the robot sailing boat,' has been designed at Aberystwyth University in Wales. Pinta is expected to sail for three months at a maximum speed of four knots (about 7.4 kph). Its designers hope the Pinta will become the first robot to cross an ocean using only wind power. This 150-kilogram sailing robot costs only $4,900. The transatlantic race will start between September 29 and October 5, 2008 from Portugal. The winner will be the first boat to reach a finishing line between the northern tip of St. Lucia and the southern tip of Martinique in the Caribbean. Here are additional details and links."<p><a href="http://hardware.slashdot.org/article.pl?sid=08/05/12/0121243&amp;from=rss"><img src="http://slashdot.org/slashdot-it.pl?from=rss&amp;op=image&amp;style=h0&amp;sid=08/05/12/0121243"></a></p><p><a href="http://hardware.slashdot.org/article.pl?sid=08/05/12/0121243&amp;from=rss">Read more of this story</a> at Slashdot.</p> +<p><a href="http://rss.slashdot.org/~a/Slashdot/slashdot?a=b7PlW5"><img src="http://rss.slashdot.org/~a/Slashdot/slashdot?i=b7PlW5" border="0"></img></a></p><img src="http://rss.slashdot.org/~r/Slashdot/slashdot/~4/288647181" height="1" width="1"/></description> +<dc:creator>kdawson</dc:creator> +<dc:date>2008-05-12T12:04:00+00:00</dc:date> +<dc:subject>robot</dc:subject> +<slash:department>seriously-cheerful</slash:department> +<slash:section>hardware</slash:section> +<slash:comments>92</slash:comments> +<slash:hit_parade>92,88,76,61,17,11,2</slash:hit_parade> +<feedburner:origLink>http://hardware.slashdot.org/article.pl?sid=08/05/12/0121243&from=rss</feedburner:origLink></item> + +<item rdf:about="http://tech.slashdot.org/article.pl?sid=08/05/11/192246&from=rss"> +<title>Dealing With Dialup</title> +<link>http://rss.slashdot.org/~r/Slashdot/slashdot/~3/288575250/article.pl</link> +<description>An anonymous reader writes "It looks like my parents may end up stuck having to use dialup to access the Internet from their cottage inside the Cape Cod National Seashore. Neither Comcast nor Verizon want to bother upgrading the hardware required to get them faster service. They could put a satellite dish on their roof, but it's a 300-year-old house and they feel a dish would be as prohibitively ugly as running dedicated lines would be prohibitively expensive. I've suggested they get familiar with a text-only email client; I also suggested they talk with their senators and local political reps. , Are there other ways they can increase the functionality despite the pitiful bandwidth? Any other good ideas? Any success stories you can share where people have finally got the bandwidth they crave?"<p><a href="http://tech.slashdot.org/article.pl?sid=08/05/11/192246&amp;from=rss"><img src="http://slashdot.org/slashdot-it.pl?from=rss&amp;op=image&amp;style=h0&amp;sid=08/05/11/192246"></a></p><p><a href="http://tech.slashdot.org/article.pl?sid=08/05/11/192246&amp;from=rss">Read more of this story</a> at Slashdot.</p> +<p><a href="http://rss.slashdot.org/~a/Slashdot/slashdot?a=CdAKQz"><img src="http://rss.slashdot.org/~a/Slashdot/slashdot?i=CdAKQz" border="0"></img></a></p><img src="http://rss.slashdot.org/~r/Slashdot/slashdot/~4/288575250" height="1" width="1"/></description> +<dc:creator>kdawson</dc:creator> +<dc:date>2008-05-12T09:39:00+00:00</dc:date> +<dc:subject>communications</dc:subject> +<slash:department>life-through-a-soda-straw</slash:department> +<slash:section>tech</slash:section> +<slash:comments>420</slash:comments> +<slash:hit_parade>420,417,305,222,50,29,18</slash:hit_parade> +<feedburner:origLink>http://tech.slashdot.org/article.pl?sid=08/05/11/192246&from=rss</feedburner:origLink></item> + +<item rdf:about="http://news.slashdot.org/article.pl?sid=08/05/11/2026230&from=rss"> +<title>Government Efficiency and Network Theory</title> +<link>http://rss.slashdot.org/~r/Slashdot/slashdot/~3/288515602/article.pl</link> +<description>Science News reports on a study relating (in a loose way) the efficiency of a national government with the size of its cabinet. Researchers in Vienna found that the development level of countries, as a proxy for the efficiency of their governments, is in general lower for countries with more members in the national cabinets. They then went on to model cabinet members as nodes in a network and found support for the observed correlation. There was even specific evidence for the decades-old observation of English historian Cyril Northcote Parkinson that decision-making is severely impaired in committees of more than 20 people. The US is getting close to Parkinson's cutoff, at 17.<p><a href="http://news.slashdot.org/article.pl?sid=08/05/11/2026230&amp;from=rss"><img src="http://slashdot.org/slashdot-it.pl?from=rss&amp;op=image&amp;style=h0&amp;sid=08/05/11/2026230"></a></p><p><a href="http://news.slashdot.org/article.pl?sid=08/05/11/2026230&amp;from=rss">Read more of this story</a> at Slashdot.</p> +<p><a href="http://rss.slashdot.org/~a/Slashdot/slashdot?a=hhLzKq"><img src="http://rss.slashdot.org/~a/Slashdot/slashdot?i=hhLzKq" border="0"></img></a></p><img src="http://rss.slashdot.org/~r/Slashdot/slashdot/~4/288515602" height="1" width="1"/></description> +<dc:creator>kdawson</dc:creator> +<dc:date>2008-05-12T07:12:00+00:00</dc:date> +<dc:subject>government</dc:subject> +<slash:department>far-too-many-cooks</slash:department> +<slash:section>news</slash:section> +<slash:comments>84</slash:comments> +<slash:hit_parade>84,82,70,57,25,19,9</slash:hit_parade> +<feedburner:origLink>http://news.slashdot.org/article.pl?sid=08/05/11/2026230&from=rss</feedburner:origLink></item> + +<item rdf:about="http://entertainment.slashdot.org/article.pl?sid=08/05/12/0055218&from=rss"> +<title>DataStorm V1.0, a Full-Auto Floppy Disk Cannon</title> +<link>http://rss.slashdot.org/~r/Slashdot/slashdot/~3/288451965/article.pl</link> +<description>Bob Loblaw writes "I ran across a huge stash of floppies at our office, and after some discussion, it became clear that rather than throw them away, we should build a gun that fires floppies. I had just bought a welder so this was a challenging first project. After about a month of work in my garage at night the DataStorm was born. It was constructed of scrap metal, a kid's bike, a weed-eater motor, and an electric screwdriver. The most difficult task ended up being how to add spin to the disk without significantly reducing its velocity. After a week and a half of trying different options, a stack of zip ties was found to work best. Since we had so much time in it we elected to shoot an infomercial showcasing the device, and had to learn to shoot &amp; edit video as we went. It was basically an office joke that spiraled out of control. My wife is not amused. At all. I hope you like it."<p><a href="http://entertainment.slashdot.org/article.pl?sid=08/05/12/0055218&amp;from=rss"><img src="http://slashdot.org/slashdot-it.pl?from=rss&amp;op=image&amp;style=h0&amp;sid=08/05/12/0055218"></a></p><p><a href="http://entertainment.slashdot.org/article.pl?sid=08/05/12/0055218&amp;from=rss">Read more of this story</a> at Slashdot.</p> +<p><a href="http://rss.slashdot.org/~a/Slashdot/slashdot?a=Dld8yh"><img src="http://rss.slashdot.org/~a/Slashdot/slashdot?i=Dld8yh" border="0"></img></a></p><img src="http://rss.slashdot.org/~r/Slashdot/slashdot/~4/288451965" height="1" width="1"/></description> +<dc:creator>kdawson</dc:creator> +<dc:date>2008-05-12T04:46:00+00:00</dc:date> +<dc:subject>humor</dc:subject> +<slash:department>tres-bouchee</slash:department> +<slash:section>entertainment</slash:section> +<slash:comments>121</slash:comments> +<slash:hit_parade>121,119,96,64,30,22,17</slash:hit_parade> +<feedburner:origLink>http://entertainment.slashdot.org/article.pl?sid=08/05/12/0055218&from=rss</feedburner:origLink></item> + +<item rdf:about="http://tech.slashdot.org/article.pl?sid=08/05/12/0047253&from=rss"> +<title>XP SP3 Crashes Some AMD Machines</title> +<link>http://rss.slashdot.org/~r/Slashdot/slashdot/~3/288396472/article.pl</link> +<description>Stony Stevenson alerts us to new information on the XP SP3-induced crashes that we discussed a few days back. Jesper Johansson, a former program manager for security policy at Microsoft, is maintaining an ongoing log and support site for users affected by any of several problems triggered by XP3. Machines using AMD hardware, particularly HP desktops, seem to have several modes of failure; others affect Intel machines.<p><a href="http://tech.slashdot.org/article.pl?sid=08/05/12/0047253&amp;from=rss"><img src="http://slashdot.org/slashdot-it.pl?from=rss&amp;op=image&amp;style=h0&amp;sid=08/05/12/0047253"></a></p><p><a href="http://tech.slashdot.org/article.pl?sid=08/05/12/0047253&amp;from=rss">Read more of this story</a> at Slashdot.</p> +<p><a href="http://rss.slashdot.org/~a/Slashdot/slashdot?a=o2p9kj"><img src="http://rss.slashdot.org/~a/Slashdot/slashdot?i=o2p9kj" border="0"></img></a></p><img src="http://rss.slashdot.org/~r/Slashdot/slashdot/~4/288396472" height="1" width="1"/></description> +<dc:creator>kdawson</dc:creator> +<dc:date>2008-05-12T02:49:00+00:00</dc:date> +<dc:subject>windows</dc:subject> +<slash:department>workarounds-emerge</slash:department> +<slash:section>tech</slash:section> +<slash:comments>204</slash:comments> +<slash:hit_parade>204,196,156,112,63,41,25</slash:hit_parade> +<feedburner:origLink>http://tech.slashdot.org/article.pl?sid=08/05/12/0047253&from=rss</feedburner:origLink></item> + +<item rdf:about="http://developers.slashdot.org/article.pl?sid=08/05/11/219231&from=rss"> +<title>Recruitment Options For a Small-Scale FOSS Project?</title> +<link>http://rss.slashdot.org/~r/Slashdot/slashdot/~3/288261054/article.pl</link> +<description>thermian writes "I've been developing my open source project for several years now, and I've never found a solution to one fairly important issue. How can a small-scale project attract new members? My project is pretty specialist, (no URL, sorry, I can't afford to get my server nuked) and I find that while it gets a fair bit of use, most users come to my software out of a need to solve their problem, or use my tutorials to learn about the subject, and none seem inclined to stick around and help make the product better. This is a fairly serious problem for me now, because my software has recently been adopted by a university, and I'm just not in a position to manage the entire set of applications and update everything on my own. Just preparing a version for release to students has been especially hard. The open source maxim 'Many eyes make all bugs shallow' only works if those 'many eyes' are available. So do you have any suggestions as to how, and where, to find people who fancy joining open source projects?"<p><a href="http://developers.slashdot.org/article.pl?sid=08/05/11/219231&amp;from=rss"><img src="http://slashdot.org/slashdot-it.pl?from=rss&amp;op=image&amp;style=h0&amp;sid=08/05/11/219231"></a></p><p><a href="http://developers.slashdot.org/article.pl?sid=08/05/11/219231&amp;from=rss">Read more of this story</a> at Slashdot.</p> +<p><a href="http://rss.slashdot.org/~a/Slashdot/slashdot?a=dEyzQO"><img src="http://rss.slashdot.org/~a/Slashdot/slashdot?i=dEyzQO" border="0"></img></a></p><img src="http://rss.slashdot.org/~r/Slashdot/slashdot/~4/288261054" height="1" width="1"/></description> +<dc:creator>kdawson</dc:creator> +<dc:date>2008-05-12T00:54:00+00:00</dc:date> +<dc:subject>programming</dc:subject> +<slash:department>where-is-everybody</slash:department> +<slash:section>developers</slash:section> +<slash:comments>180</slash:comments> +<slash:hit_parade>180,166,140,105,43,30,17</slash:hit_parade> +<feedburner:origLink>http://developers.slashdot.org/article.pl?sid=08/05/11/219231&from=rss</feedburner:origLink></item> + +<item rdf:about="http://it.slashdot.org/article.pl?sid=08/05/11/2044216&from=rss"> +<title>Hiding a Rootkit In System Management Mode</title> +<link>http://rss.slashdot.org/~r/Slashdot/slashdot/~3/288306327/article.pl</link> +<description>Sniper223 notes a PC World article on a new kind of rootkit recently developed by researchers, which will be demoed at Black Hat in August. The rootkit runs in System Management Mode, a longtime feature of x86 architecture that allows for code to run in a locked part of memory. It is said to be harder to detect, potentially, than VM-based rootkits. The article notes that the technique is unlikely to lead to widespread expoitation: "Being divorced from the operating system makes the SMM rootkit stealthy, but it also means that hackers have to write this driver code expressly for the system they are attacking."<p><a href="http://it.slashdot.org/article.pl?sid=08/05/11/2044216&amp;from=rss"><img src="http://slashdot.org/slashdot-it.pl?from=rss&amp;op=image&amp;style=h0&amp;sid=08/05/11/2044216"></a></p><p><a href="http://it.slashdot.org/article.pl?sid=08/05/11/2044216&amp;from=rss">Read more of this story</a> at Slashdot.</p> +<p><a href="http://rss.slashdot.org/~a/Slashdot/slashdot?a=UVcKAI"><img src="http://rss.slashdot.org/~a/Slashdot/slashdot?i=UVcKAI" border="0"></img></a></p><img src="http://rss.slashdot.org/~r/Slashdot/slashdot/~4/288306327" height="1" width="1"/></description> +<dc:creator>kdawson</dc:creator> +<dc:date>2008-05-11T22:57:00+00:00</dc:date> +<dc:subject>security</dc:subject> +<slash:department>can-you-see-me-now</slash:department> +<slash:section>it</slash:section> +<slash:comments>112</slash:comments> +<slash:hit_parade>112,108,79,59,28,16,10</slash:hit_parade> +<feedburner:origLink>http://it.slashdot.org/article.pl?sid=08/05/11/2044216&from=rss</feedburner:origLink></item> + +<item rdf:about="http://tech.slashdot.org/article.pl?sid=08/05/11/1939240&from=rss"> +<title>Changes In Store For PHP V6</title> +<link>http://rss.slashdot.org/~r/Slashdot/slashdot/~3/288274216/article.pl</link> +<description>An anonymous reader sends in an IBM DeveloperWorks article detailing the changes coming in PHP V6 &mdash; from namespaces, to Web 2.0 built-ins, to a few features that are being removed.<p><a href="http://tech.slashdot.org/article.pl?sid=08/05/11/1939240&amp;from=rss"><img src="http://slashdot.org/slashdot-it.pl?from=rss&amp;op=image&amp;style=h0&amp;sid=08/05/11/1939240"></a></p><p><a href="http://tech.slashdot.org/article.pl?sid=08/05/11/1939240&amp;from=rss">Read more of this story</a> at Slashdot.</p> +<p><a href="http://rss.slashdot.org/~a/Slashdot/slashdot?a=vlbxSh"><img src="http://rss.slashdot.org/~a/Slashdot/slashdot?i=vlbxSh" border="0"></img></a></p><img src="http://rss.slashdot.org/~r/Slashdot/slashdot/~4/288274216" height="1" width="1"/></description> +<dc:creator>kdawson</dc:creator> +<dc:date>2008-05-11T21:47:00+00:00</dc:date> +<dc:subject>php</dc:subject> +<slash:department>ready-or-not</slash:department> +<slash:section>tech</slash:section> +<slash:comments>304</slash:comments> +<slash:hit_parade>304,295,231,167,46,22,14</slash:hit_parade> +<feedburner:origLink>http://tech.slashdot.org/article.pl?sid=08/05/11/1939240&from=rss</feedburner:origLink></item> + +<textinput rdf:about="http://slashdot.org/search.pl"> +<title>Search Slashdot</title> +<description>Search Slashdot stories</description> +<name>query</name> +<link>http://slashdot.org/search.pl</link> +</textinput> + +</rdf:RDF>
--- /dev/null Thu Jan 01 00:00:00 1970 +0000 +++ b/rss2twitter/tests/teste_readrss.py Fri May 16 16:12:05 2008 -0300 @@ -0,0 +1,11 @@ +from rss2twitter.readrss import parse + +def test_feed(): + url = 'tests/mocks/slashdot.xml' + t = open(url).read() + f = parse(t) + f.updateLastRead() + print(f.feed['items'][0]['updated_parsed']) + print(f.feed['items'][1]['updated_parsed']) + print(f.feed['items'][2]['updated_parsed']) + assert(f.getlastRead() == f.feed['items'][0]['updated_parsed'])