10 from .common
import InfoExtractor
12 class WeBSurgIE(InfoExtractor
):
13 IE_NAME
= u
'websurg.com'
14 _VALID_URL
= r
'http://.*?\.websurg\.com/MEDIA/\?noheader=1&doi=(.*)'
17 u
'url': u
'http://www.websurg.com/MEDIA/?noheader=1&doi=vd01en4012',
18 u
'file': u
'vd01en4012.mp4',
20 u
'skip_download': True,
24 _LOGIN_URL
= 'http://www.websurg.com/inc/login/login_div.ajax.php?login=1'
26 def _real_extract(self
, url
):
29 'username': self
._downloader
.params
['username'],
30 'password': self
._downloader
.params
['password'],
34 request
= compat_urllib_request
.Request(
35 self
._LOGIN
_URL
, compat_urllib_parse
.urlencode(login_form
))
37 'Content-Type', 'application/x-www-form-urlencoded;charset=utf-8')
38 login_results
= compat_urllib_request
.urlopen(request
).info()
40 sessid
= re
.match(r
'PHPSESSID=(.*);',
41 login_results
['Set-Cookie']).group(1)
42 request
= compat_urllib_request
.Request(
43 url
, compat_urllib_parse
.urlencode(login_form
),
44 {'Cookie': 'PHPSESSID=' + sessid + ';'}
)
45 webpage
= compat_urllib_request
.urlopen(request
).read()
47 video_id
= re
.match(self
._VALID
_URL
, url
).group(1)
49 url_info
= re
.search(r
'streamer="(.*?)" src="(.*?)"', webpage
)
52 self
._downloader
.report_warning(
53 u
'Unable to log in: bad username/password')
56 return {'id': video_id
,
58 r
'property="og:title" content="(.*?)" />'
60 'description': re
.search(
61 r
'name="description" content="(.*?)" />', webpage
).group(1),
63 'url' : url_info
.group(1) + '/' + url_info
.group(2),
64 'thumbnail': re
.search(
65 r
'property="og:image" content="(.*?)" />', webpage