1
0
mirror of https://github.com/l1ving/youtube-dl synced 2024-11-20 21:27:52 +08:00

[utils] Move base62 to utils

This commit is contained in:
Yen Chi Hsuan 2016-02-24 22:08:40 +08:00
parent e048d87fc9
commit 81bdc8fdf6
2 changed files with 16 additions and 13 deletions

View File

@ -18,6 +18,7 @@ from ..compat import (
compat_urllib_parse_urlparse,
)
from ..utils import (
base62,
ExtractorError,
ohdave_rsa_encrypt,
remove_start,
@ -126,21 +127,9 @@ class IqiyiSDK(object):
class IqiyiSDKInterpreter(object):
BASE62_TABLE = '0123456789abcdefghijklmnopqrstuvwxyzABCDEFGHIJKLMNOPQRSTUVWXYZ'
def __init__(self, sdk_code):
self.sdk_code = sdk_code
@classmethod
def base62(cls, num):
if num == 0:
return '0'
ret = ''
while num:
ret = cls.BASE62_TABLE[num % 62] + ret
num = num // 62
return ret
def decode_eval_codes(self):
self.sdk_code = self.sdk_code[5:-3]
@ -154,7 +143,7 @@ class IqiyiSDKInterpreter(object):
while count:
count -= 1
b62count = self.base62(count)
b62count = base62(count)
symbol_table[b62count] = symbols[count] or b62count
self.sdk_code = re.sub(

View File

@ -2619,3 +2619,17 @@ def ohdave_rsa_encrypt(data, exponent, modulus):
payload = int(binascii.hexlify(data[::-1]), 16)
encrypted = pow(payload, exponent, modulus)
return '%x' % encrypted
def base_n(num, n, table):
if num == 0:
return '0'
ret = ''
while num:
ret = table[num % n] + ret
num = num // n
return ret
def base62(num):
return base_n(num, 62, '0123456789abcdefghijklmnopqrstuvwxyzABCDEFGHIJKLMNOPQRSTUVWXYZ')