]> projects.mako.cc - iron-blogger/blobdiff - import-feeds.py
Punts for 2010-09-08
[iron-blogger] / import-feeds.py
index a54fef8245edc0e264135a03e488686634c4fe10..55741672d4daba1a26b48526a362a963e8347a5f 100755 (executable)
@@ -1,6 +1,7 @@
 #!/usr/bin/python
 from lxml import html
 import yaml
 #!/usr/bin/python
 from lxml import html
 import yaml
+import sys
 import urllib2
 import urlparse
 
 import urllib2
 import urlparse
 
@@ -18,21 +19,23 @@ def fetch_links(url):
                   'comments' not in l.attrib.get('title','')]
     if candidates:
         return candidates[0].attrib['href']
                   'comments' not in l.attrib.get('title','')]
     if candidates:
         return candidates[0].attrib['href']
-    return links[0].attrib['href']
+    elif links:
+        return links[0].attrib['href']
+    else:
+        print >>sys.stderr, "No link found for %s" % (url,)
+        return None
 
 for (name, u) in users.items():
 
 for (name, u) in users.items():
-    print "[%s]" % name
     for e in u['links']:
         (title, url) = e[0:2]
     for e in u['links']:
         (title, url) = e[0:2]
-        print " - %s:" % title.strip()
         e[0] = e[0].strip()
         if len(e) == 3:
             continue
         link = fetch_links(url)
         e[0] = e[0].strip()
         if len(e) == 3:
             continue
         link = fetch_links(url)
-        if not link.startswith('http:'):
-            link = urlparse.urljoin(url, link)
-        print "   %s" % (link,)
-        e.append(link)
+        if link:
+            if not link.startswith('http:'):
+                link = urlparse.urljoin(url, link)
+            e.append(link)
 
 with open('bloggers.yml', 'w') as f:
     yaml.safe_dump(users, f)
 
 with open('bloggers.yml', 'w') as f:
     yaml.safe_dump(users, f)

Benjamin Mako Hill || Want to submit a patch?