summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorLuo Jinghua <sunmoon1997@gmail.com>2010-01-23 23:42:55 +0800
committerLuo Jinghua <sunmoon1997@gmail.com>2010-02-09 00:08:20 +0800
commit1ed623b0ddb2856cb361b4404dc678a0d1ef91d2 (patch)
tree6bd976ca8ee5c68f6436d769aaed7daa8cfb0df7
parent2785b1a34910439cc359d48178f43e58920a2b13 (diff)
pplist: the 0 page is the default page instead of the first page of play list
-rw-r--r--totem/plugin/ppslist.py14
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():