[Zope] rss
Kevin Teague
kteague@stormix.com
Wed, 13 Dec 2000 15:20:13 -0800
I'm setting up some rss feeds, and I've just used the Site Summary
product from here:
http://www.zope.org/Members/edmundd/SiteSummary
With Site Summary you can use the importRSS method to pull in a channel.
I use a modified version of this script running on a cron job to update
the rss channels:
http://www.zope.org/Members/phd/cron-zope/pack-db_fs
The script looks like this (it's still kind of hack-ish, but it works
:). My only problem now is to figure out how to have member preferences
handle a list of rss channels with the PTK.
#!/usr/bin/python
username="kteague"
password="******"
zope="http://www.evileggs.org/"
import sys, urllib, re
class NoGUIURLopener(urllib.FancyURLopener):
def __init__(self, username, password, *args):
apply(urllib.FancyURLopener.__init__, (self,) + args)
self.username = username
self.password = password
self.asked = 0
def prompt_user_passwd(self, host, realm):
if self.asked:
raise "Unauthorized"
else:
self.asked = 1
return self.username, self.password
channel_id = ""
rss_url = ""
try:
f = open("channellist.txt")
except:
print 'Could not open the channellist.txt file.'
lines = f.readlines()
f.close()
for line in lines:
if re.search('^\n$', line):
continue
m = re.search('(.*?)\s+(.*)', line)
try:
(channel_id, rss_url) = m.groups()
except:
print 'Can not properly parse line:\n%s' % (line)
continue
urllib._urlopener = NoGUIURLopener(username, password)
urllib.urlretrieve("%s/rss/%s/importRSS?url=%s" % (zope, channel_id,
rss_url))
==================
And the 'channellist.txt' text file just has the Zope id's of the Site
Summary objects and the rss channel URLs, like so:
Advogato http://www.advogato.com/rss/articles.xml
Linux.com http://www.linux.com/mrn/front_page.rss
--
Kevin Teague, Zopista
http://www.stormix.com