me.fier.tcpserver/module/http/url.py

33 lines
850 B
Python

import urllib.parse
import os
def parse(url):
url = url.split("?",1)
url[0] = urllib.parse.unquote(url[0],encoding="utf-8")
if len(url) < 2: url.append("")
url[1] = url[1].split("&")
for i in range(len(url[1])):
url[1][i] = url[1][i].split("=",1)
if len(url[1][i] < 2): url[1][i].append("")
url[1][i][0] = urllib.parse.unquote(url[1][i][0],encoding="utf-8")
url[1][i][1] = urllib.parse.unquote(url[1][i][1],encoding="utf-8")
def standardize(path):
path = path.replace("/",os.path.sep)
path = path.replace("\\",os.path.sep)
path = path.lstrip(os.path.sep)
while os.path.sep + os.path.sep in path:
path = path.replace(os.path.sep + os.path.sep,os.path.sep)
path = path.split(os.path.sep)
i = 0
length = len(path)
while i < length:
if path[i] in [".",".."]:
del path[i]
length -= 1
continue
i += 1
return path