forked from warquel/ppdecode
-
Notifications
You must be signed in to change notification settings - Fork 0
Expand file tree
/
Copy pathppdecode.py
More file actions
executable file
·30 lines (26 loc) · 852 Bytes
/
Copy pathppdecode.py
File metadata and controls
executable file
·30 lines (26 loc) · 852 Bytes
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
#!/usr/bin/env python
import urlparse, re
import sys
class ppdecode(object):
def __init__(self, url):
self.pplink = url
self.arguments = urlparse.parse_qs(urlparse.urlparse(url).query)
self.url = self._decodeurl()
self._parse()
def _decodeurl(self):
tmp = self.arguments['u'][0].replace("_","/")
for x in list(set(re.findall('-[0-9A-F]{2,2}', tmp))):
tmp = tmp.replace(x,chr(int(x[1:3],16)))
return tmp
def _parse(self):
if "r" in self.arguments:
self.recipient = self.arguments['r'][0]
if "c" in self.arguments:
self.site = self.arguments['c'][0]
pass
if __name__ == "__main__":
if(len(sys.argv) != 2):
sys.exit('Usage: ppdecode.py "http://url"')
url = sys.argv[1]
p = ppdecode(url)
print p.url