9
import urllib2, urllib, support, re, can, simplejson
10
from xml.dom import minidom
9
import urllib2, support, re, can
10
import time, simplejson
36
36
self.account = client.account
37
37
self.protocol = client.account["protocol"]
38
38
self.username = client.account["username"]
40
self.title = data.getElementsByTagName("title")[0].firstChild.nodeValue
41
self.sender = data.getElementsByTagName("author")[0].firstChild.nodeValue
42
self.sender_nick = self.sender
43
self.sender_id = self.sender.replace(" ","_")
44
self.time = support.parse_time(data.getElementsByTagName("pubDate")[0].firstChild.nodeValue)
45
self.text = sanitize_text(data.getElementsByTagName("description")[0].firstChild.nodeValue)
46
self.image = "http://digg.com/users/%s/l.png" % self.sender_nick
39
self.title = data["title"]
40
sender = data["friends"]["users"][0]
41
self.sender = "fullname" in sender and sender["fullname"] or sender["name"]
42
self.sender_nick = sender["name"]
43
self.sender_id = sender["name"]
46
self.time = support.parse_time(sender["date"])
48
self.time = support.parse_time(time.asctime(time.gmtime(sender["date"])))
50
self.text = sanitize_text(data["description"])
51
self.image = sender["icon"]
47
52
self.bgcolor = "comment_color"
48
self.url = data.getElementsByTagName("link")[0].firstChild.nodeValue
49
self.profile_url = "http://digg.com/users/%s" % self.sender
53
self.url = data["link"]
54
self.profile_url = "http://digg.com/users/%s" % self.sender_nick
55
self.diggs = data["diggs"]
51
57
class Digg(Message):
52
58
def __init__(self, client, data):
53
59
Message.__init__(self, client, data)
54
self.title = "%s <small>dugg %s</small>" % (self.sender_nick,
55
data.getElementsByTagName("title")[0].firstChild.nodeValue)
60
self.title = "%s <small>dugg %s</small>" % (self.sender_nick, self.title)
56
61
self.bgcolor = "digg_color"
58
self.diggs = simplejson.loads(urllib2.urlopen(urllib2.Request(
59
"http://services.digg.com/story/%s?appkey=http://cixar.com&type=json" %
60
self.url.split("/")[-1])).read())["stories"][0]["diggs"]
63
64
def __init__(self, acct):
64
65
self.account = acct
68
69
self.account["username"] != None
70
71
def connect(self, url, data = None):
71
return urllib2.urlopen(urllib2.Request(url, data)).read()
72
return urllib2.urlopen(urllib2.Request(url, data))
73
74
def get_comments(self):
74
return minidom.parseString(self.connect(
75
"http://digg.com/users/%s/friends/comments.rss" %
76
self.account["username"])).getElementsByTagName("item")
75
return simplejson.load(self.connect(
76
"http://services.digg.com/user/%s/friends/commented?appkey=http://launchpad.net/gwibber&type=json" %
77
self.account["username"]))["stories"]
78
79
def get_diggs(self):
79
return minidom.parseString(self.connect(
80
"http://digg.com/users/%s/friends/diggs.rss" %
81
self.account["username"])).getElementsByTagName("item")
80
return simplejson.load(self.connect(
81
"http://services.digg.com/user/%s/friends/dugg?appkey=http://launchpad.net/gwibber&type=json" %
82
(self.account["username"])))["stories"]
84
for data in self.get_comments()[0:10]:
85
yield Message(self, data)
85
#for data in self.get_comments()[0:10]:
86
# yield Message(self, data)
87
for data in self.get_diggs()[0:10]:
88
for data in self.get_diggs():
88
89
yield Digg(self, data)