diff options
author | Luo Jinghua <sunmoon1997@gmail.com> | 2010-01-23 23:42:55 +0800 |
---|---|---|
committer | Luo Jinghua <sunmoon1997@gmail.com> | 2010-02-09 00:08:20 +0800 |
commit | 1ed623b0ddb2856cb361b4404dc678a0d1ef91d2 (patch) | |
tree | 6bd976ca8ee5c68f6436d769aaed7daa8cfb0df7 | |
parent | 2785b1a34910439cc359d48178f43e58920a2b13 (diff) |
pplist: the 0 page is the default page instead of the first page of play list
-rw-r--r-- | totem/plugin/ppslist.py | 14 |
1 files changed, 10 insertions, 4 deletions
diff --git a/totem/plugin/ppslist.py b/totem/plugin/ppslist.py index 9e956aa..843cd55 100644 --- a/totem/plugin/ppslist.py +++ b/totem/plugin/ppslist.py @@ -264,6 +264,7 @@ class PPSMovie: def download(url, max_retry = 3, interval = 5): if not url: return '' + #print 'downloading ', url for i in range (max_retry): try: res = urllib.urlopen (url).read () @@ -403,7 +404,7 @@ def getMovieFileListFrameBaseUrl(s): return url[0:pos] return url -def parseMoviePlayList(s): +def parseMoviePlayList(s, sort_list = False): s = gbk2utf8(s) soup = BeautifulSoup.BeautifulSoup(s) seein = soup.findAll('div', { 'class': 'onseeIn' }) @@ -428,6 +429,11 @@ def parseMoviePlayList(s): f.url = unicode(url).encode('utf-8') files.append(f) + if sort_list: + def ppsfile_sort_key(f): + return f.title + files.sort(key = ppsfile_sort_key) + pagenav = soup.findAll('div', { 'class': 'pageNav' }) if not pagenav: return () @@ -435,7 +441,7 @@ def parseMoviePlayList(s): maxpage = int(refs[-1].contents[-1]) spans = pagenav[0].findAll('span') curpage = int(spans[0].contents[-1]) - return (files, max(maxpage, curpage) + 1, curpage) + return (files, max(maxpage, curpage), curpage - 1) def getMovieFileList(movie): s = download(movie.playerurl) @@ -518,11 +524,11 @@ class PPSList: def fetchMoviePlayList(self, cls, movie, page_id = 0): if not movie.baseurl: return None - s = download(movie.baseurl + '/%d.html' % page_id) + s = download(movie.baseurl + '/%d.html' % (page_id + 1)) return s def parseMoviePlayList(self, cls, movie, s, page_id = 0): - result = parseMoviePlayList(s) + result = parseMoviePlayList(s, True) if result: max_page = result[1] if max_page > movie.getMaxPage(): |