mirror of
https://github.com/yt-dlp/yt-dlp.git
synced 2024-11-15 21:03:18 +00:00
[theplatform] Fix for Python 3.2
test_AENetworks{,_1} fails as in Python < 3.3, binascii.a2b_* functions accepts only bytes-like objects
This commit is contained in:
parent
2ac2cbc0a3
commit
dcf094d626
|
@ -159,11 +159,11 @@ def _sign_url(url, sig_key, sig_secret, life=600, include_qs=False):
|
||||||
def str_to_hex(str):
|
def str_to_hex(str):
|
||||||
return binascii.b2a_hex(str.encode('ascii')).decode('ascii')
|
return binascii.b2a_hex(str.encode('ascii')).decode('ascii')
|
||||||
|
|
||||||
def hex_to_str(hex):
|
def hex_to_bytes(hex):
|
||||||
return binascii.a2b_hex(hex)
|
return binascii.a2b_hex(hex.encode('ascii'))
|
||||||
|
|
||||||
relative_path = re.match(r'https?://link.theplatform.com/s/([^?]+)', url).group(1)
|
relative_path = re.match(r'https?://link.theplatform.com/s/([^?]+)', url).group(1)
|
||||||
clear_text = hex_to_str(flags + expiration_date + str_to_hex(relative_path))
|
clear_text = hex_to_bytes(flags + expiration_date + str_to_hex(relative_path))
|
||||||
checksum = hmac.new(sig_key.encode('ascii'), clear_text, hashlib.sha1).hexdigest()
|
checksum = hmac.new(sig_key.encode('ascii'), clear_text, hashlib.sha1).hexdigest()
|
||||||
sig = flags + expiration_date + checksum + str_to_hex(sig_secret)
|
sig = flags + expiration_date + checksum + str_to_hex(sig_secret)
|
||||||
return '%s&sig=%s' % (url, sig)
|
return '%s&sig=%s' % (url, sig)
|
||||||
|
|
Loading…
Reference in a new issue