]> git.pld-linux.org Git - packages/clive.git/blob - clive-spz.patch
- add southparkzone support
[packages/clive.git] / clive-spz.patch
1 --- clive-0.4.1/clive/parse.py  2008-01-20 01:24:26.960335855 +0200
2 +++ clive-0.4.1-spz/clive/parse.py      2008-01-20 01:23:07.943359159 +0200
3 @@ -50,6 +50,7 @@
4                         ('guba.com', 'guba', self._parse_guba),
5                         ('stage6.', 'stage6', self._parse_stage6),
6                         ('delfi.', 'delfi', self._parse_delfi),
7 +                       ('www.southparkzone.com', 'southparkzone', self._parse_southparkzone),
8                 ]
9  
10         ## Parses a video page data (HTML).
11 @@ -62,6 +63,7 @@
12         # \param say A callback function for printing out stdout messages
13         def parse(self, data, url, opts, callb_query_video_length, say):
14                 self._say = say
15 +               self._opts = opts
16  
17                 fmt = formatter.AbstractFormatter(formatter.NullWriter())
18                 p = HTMLParser(fmt)
19 @@ -195,6 +197,23 @@
20                 vid = md5.new(str(time.time())).hexdigest()[:8]
21                 return (url, vid)
22  
23 +       def _parse_southparkzone(self, url, data):
24 +               mirror_id = self._parse_from_to(data, "episodeinfo.php?mirror=", "'")
25 +               from urlgrabber.grabber import URLGrabber
26 +               from clive.progress import Progress
27 +               g = URLGrabber(
28 +                       user_agent = self._opts.user_agent,
29 +                       progress_obj = Progress(),
30 +                       proxies = self._opts.proxy,
31 +               )
32 +               url = "http://www.southparkzone.com/" + mirror_id
33 +               o = g.urlopen(url)
34 +               data = o.read()
35 +               url = self._parse_from_to(data, "<location><![CDATA[", "]]></location>", skip_from = 1)
36 +
37 +               vid = md5.new(str(time.time())).hexdigest()[:8]
38 +               return (url, vid)
39 +
40         def _parse_from_to(self, data, _from, to, skip_from=0):
41                 start = data.find(_from)
42                 end = data.find(to, start)
This page took 0.079849 seconds and 3 git commands to generate.