if self.working == False:
if len(self.list) > 0:\r
idx = self["list"].getSelectionIndex()\r
- (url, length, type) = self.splitExtraInfo(self.movies[idx][2])
+ (url, length, type) = self.splitExtraInfo(self.movies[idx][1])
if config.plugins.Podcast.buffer.value:
file = url
while file.__contains__("/"):
getPage(self.url).addCallback(self.showMovies).addErrback(self.error)
def showMovies(self, page):
- reonecat = re.compile(r'<title>(.+?)</title>.+?<description>(.+?)</description>.+?<pubDate>(.+?)</pubDate>.+?<enclosure(.+?)/>.+?', re.DOTALL)\r
- for title, description, pubDate, extra in reonecat.findall(page):
- if title.startswith("<![CDATA["):
- title = title[9:]
- if title.endswith("]]>"):
- title = title[:-3]
- if description.__contains__("<![CDATA["):
- idx = description.index("<![CDATA[")
- description = description[idx+10:]
- if description.endswith("]]>"):
- description = description[:-3]\r
- self.list.append(encodeUrl(title))\r
- self.movies.append([description, pubDate, extra])\r
+ if page.__contains__("<itunes"):
+ reonecat = re.compile(r'<item>(.+?)</item>', re.DOTALL)
+ for item in reonecat.findall(page):
+ reonecat2 = re.compile(r'<title>(.+?)</title>.+?<description>(.+?)</description>.+?<enclosure(.+?)/>.+?', re.DOTALL)\r
+ for title, description, extra in reonecat2.findall(item):
+ if title.startswith("<![CDATA["):
+ title = title[9:]
+ if title.endswith("]]>"):
+ title = title[:-3]
+ if description.__contains__("<![CDATA["):
+ idx = description.index("<![CDATA[")
+ description = description[idx+10:]
+ if description.endswith("]]>"):
+ description = description[:-3]\r
+ self.list.append(encodeUrl(title))\r
+ self.movies.append([description, extra])
+ else:
+ reonecat = re.compile(r'<title>(.+?)</title>.+?<description>(.+?)</description>.+?<enclosure(.+?)/>.+?', re.DOTALL)\r
+ for title, description, extra in reonecat.findall(page):
+ if title.startswith("<![CDATA["):
+ title = title[9:]
+ if title.endswith("]]>"):
+ title = title[:-3]
+ if description.__contains__("<![CDATA["):
+ idx = description.index("<![CDATA[")
+ description = description[idx+10:]
+ if description.endswith("]]>"):
+ description = description[:-3]\r
+ self.list.append(encodeUrl(title))\r
+ self.movies.append([description, extra])\r
self["list"].setList(self.list)\r
self.showInfo()
self.working = False
if len(self.list) > 0:\r
idx = self["list"].getSelectionIndex()\r
description = self.movies[idx][0]\r
- pubDate = self.movies[idx][1]\r
- (url, length, type) = self.splitExtraInfo(self.movies[idx][2])\r
- self["info"].setText("%s: %s\n%s: %s %s: %s\n%s" % (_("Date"), pubDate, _("Length"), length, _("Type"), type, encodeUrl(description)))\r
+ (url, length, type) = self.splitExtraInfo(self.movies[idx][1])\r
+ self["info"].setText("%s: %s %s: %s\n%s" % (_("Length"), length, _("Type"), type, encodeUrl(description)))\r
\r
def splitExtraInfo(self, info):\r
if info.__contains__('url="'):\r