Advertisement
Not a member of Pastebin yet?
Sign Up,
it unlocks many cool features!
- #!/usr/bin/python
- import re
- import base64
- def ASCIIDecode(string):
- i = 0
- l = len(string)
- ret = ''
- while i < l:
- c = string[i]
- if string[i:(i+2)] == '\\x':
- c = chr(int(string[(i+2):(i+4)],16))
- i+=3
- if string[i:(i+2)] == '\\u':
- c = chr(int(string[(i+2):(i+6)],16))
- i+=5
- ret = ret + str(c)
- i += 1
- return ret
- #open file https://www.animedigitalnetwork.fr/components/com_vodvideo/videojs/adn-vjs.min.js
- fh = open('G:\\Python\\adndecode\\page.js', "r")
- sHtmlContent = fh.read()#.decode('utf-16','replace')
- fh.close()
- #nettoyage
- #sHtmlContent = sHtmlContent.decode('unicode_escape')
- sHtmlContent = ASCIIDecode(sHtmlContent)
- sHtmlContent = sHtmlContent.replace("['|\"]","[\\'|\"]")
- sHtmlContent = sHtmlContent.replace("\n","\\n")
- #print (sHtmlContent)
- #fh = open('G:\\Python\\adndecode\\page.txt', "wb")
- #fh.write((sHtmlContent).encode('utf-8') )
- #fh.close()
- #1 processing
- r = re.search('^var (_0x[0-9a-f]+)=\[([^]]+)\];',sHtmlContent)
- if not r:
- print('erreur 1')
- V1 = r.group(1)
- T1 = r.group(2)
- sHtmlContent = sHtmlContent[r.end():]
- T1 = T1.replace("'","").split(',')
- i = 0
- for j in T1:
- T1[i] = base64.b64decode(T1[i])
- i = i + 1
- print (T1)
- #2 eme processing
- r = re.findall('(_0x[0-9a-f]+)\[.base64DecodeUnicode.\]',sHtmlContent)
- if not r:
- print('erreur 2')
- V2 = r[0]
- print (V2)
- r = re.findall( V2 + '\(.(0x[0-9a-f]+).\)',sHtmlContent)
- if not r:
- print('erreur 3')
- for i in r:
- print (i)
- remp = "'" + T1[ int(i, 16) ].decode("utf-8").replace("'",' ') + "'"
- print ( V2 + "('" + str(i) + "') replace par " + remp )
- sHtmlContent = sHtmlContent.replace( V2 + "('" + str(i) + "')" , remp )
- #Sauvegarde, desole pas trouve plus propre
- fh = open('G:\\Python\\adndecode\\page.txt', "wb")
- fh.write(sHtmlContent.encode('utf-8') )
- fh.close()
- #print (sHtmlContent)
Advertisement
Add Comment
Please, Sign In to add comment
Advertisement