Ejemplo n.º 1
0
 def run(self):
     db = connection()
     try:
         while True:
             feed = self.queue.get(False)
             try:
                 feed.refresh(db)
             except Timeout:
                 feed.error = "Timed out"
                 feed.save(db)
                 db.commit()
             except Exception, e:
                 feed.error = e
                 feed.save(db)
                 db.commit()
                 raise e # Comment out in production                
     except Empty: # We're done.
         db.close()
Ejemplo n.º 2
0
#!/usr/bin/python
# Test/utility script that imports all the feeds from an OPML file
# into the 'feeds' table. Does not do dupe check.

import sys
from om import Feed, connection
import cfg 
from lib.BeautifulSoup import BeautifulSoup

if len(sys.argv) != 2:
    print "Usage: %s [database type, eg. 'development']" % sys.argv[0]
    sys.exit()
    
cfg.DBCONFIG = cfg.DBConfig(sys.argv[1])
db = connection()

soup = BeautifulSoup(sys.stdin)
feeds = []
for feed in soup.fetch('outline'):
    syndicateURL = feed.get('xmlurl')
    if syndicateURL:
        Feed(url=syndicateURL).save(db)
db.commit()
db.close