]>
Commit | Line | Data |
---|---|---|
bd1bf2d7 ER |
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) |