in darabonba/url.py [0:0]
def path_encode(path):
if not path or path == "/":
return path
parts = path.split('/')
encoded_parts = [quote(part, safe='') for part in parts]
encoded_path = '/'.join(encoded_parts)
encoded_path = encoded_path.replace("+", "%20").replace("*", "%2A").replace("%7E", "~")
return encoded_path