return [buf]
def urlq(url):
+ if isinstance(url, str):
+ url = url.encode("utf-8")
ret = ""
+ invalid = b"&=#?/\"'"
for c in url:
- if c == "&" or c == "=" or c == "#" or c == "?" or c == "/" or (ord(c) <= 32):
- ret += "%%%02X" % ord(c)
+ if c in invalid or (c <= 32) or (c >= 128):
+ ret += "%%%02X" % c
else:
- ret += c
+ ret += chr(c)
return ret
class urlerror(ValueError):