1234567891011121314151617181920212223242526272829303132333435363738394041424344454647484950515253545556575859 |
- #!/usr/bin/python
- # -*- coding: utf-8 -*-
-
- # /*
- # * Copyright (C) 2015 Lubomir Kucera
- # *
- # *
- # * This Program is free software; you can redistribute it and/or modify
- # * it under the terms of the GNU General Public License as published by
- # * the Free Software Foundation; either version 2, or (at your option)
- # * any later version.
- # *
- # * This Program is distributed in the hope that it will be useful,
- # * but WITHOUT ANY WARRANTY; without even the implied warranty of
- # * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
- # * GNU General Public License for more details.
- # *
- # * You should have received a copy of the GNU General Public License
- # * along with this program; see the file COPYING. If not, write to
- # * the Free Software Foundation, 675 Mass Ave, Cambridge, MA 02139, USA.
- # * http://www.gnu.org/copyleft/gpl.html
- # *
- # */
-
- import re
- import util
- import urllib
- import pickle
- import demjson
-
- __author__ = 'Jose Riha'
- __name__ = 'myviru'
-
- UA = urllib.quote(util.UA)
-
-
- def supports(url):
- return re.search(r'http://myvi.ru/player/flash', url) is not None
-
-
- def resolve(url):
- cookies = {}
- result = []
- util.init_urllib(cookies)
- id = re.search(r'.*player/flash/(?P<url>.+)', url).group('url')
- r = util.request('http://myvi.ru/player/api/Video/Get/%s?sig' % id)
- jsondata = demjson.decode(r)
- playlist = jsondata['sprutoData']['playlist'][0]
- uuid = pickle.loads(util._cookie_jar.dump())[
- '.myvi.ru']['/']['UniversalUserID']
- for f in playlist['video']:
- streamurl = f['url']
- streamurl += '|Cookie=UniversalUserID%3D' + urllib.quote(uuid.value)
- streamurl += '&User-Agent=' + UA
- result.append({'url': streamurl})
- if result:
- return result
- else:
- return None
|