mirror of
https://github.com/soimort/you-get.git
synced 2025-02-03 08:43:58 +03:00
Sina: key algorithm #298
This commit is contained in:
parent
0ae948d757
commit
39adc8f563
@ -4,9 +4,19 @@ __all__ = ['sina_download', 'sina_download_by_vid', 'sina_download_by_vkey']
|
|||||||
|
|
||||||
from ..common import *
|
from ..common import *
|
||||||
|
|
||||||
def video_info(id):
|
from hashlib import md5
|
||||||
xml = get_content('http://interface.bilibili.tv/playurl?vid=%s' % id, headers=fake_headers, decoded=True)
|
from random import randint
|
||||||
#xml = get_content('http://www.tucao.cc/api/sina.php?vid=%s' % id, headers=fake_headers, decoded=True)
|
from time import time
|
||||||
|
|
||||||
|
def get_k(vid, rand):
|
||||||
|
t = str(int('{0:b}'.format(int(time()))[:-6], 2))
|
||||||
|
return md5((vid + 'Z6prk18aWxP278cVAH' + t + rand).encode('utf-8')).hexdigest()[:16] + t
|
||||||
|
|
||||||
|
def video_info(vid):
|
||||||
|
rand = "0.{0}{1}".format(randint(10000, 10000000), randint(10000, 10000000))
|
||||||
|
url = 'http://v.iask.com/v_play.php?vid={0}&ran={1}&p=i&k={2}'.format(vid, rand, get_k(vid, rand))
|
||||||
|
xml = get_content(url, headers=fake_headers, decoded=True)
|
||||||
|
|
||||||
urls = re.findall(r'<url>(?:<!\[CDATA\[)?(.*?)(?:\]\]>)?</url>', xml)
|
urls = re.findall(r'<url>(?:<!\[CDATA\[)?(.*?)(?:\]\]>)?</url>', xml)
|
||||||
name = match1(xml, r'<vname>(?:<!\[CDATA\[)?(.+?)(?:\]\]>)?</vname>')
|
name = match1(xml, r'<vname>(?:<!\[CDATA\[)?(.+?)(?:\]\]>)?</vname>')
|
||||||
vstr = match1(xml, r'<vstr>(?:<!\[CDATA\[)?(.+?)(?:\]\]>)?</vstr>')
|
vstr = match1(xml, r'<vstr>(?:<!\[CDATA\[)?(.+?)(?:\]\]>)?</vstr>')
|
||||||
|
Loading…
Reference in New Issue
Block a user