Python 的模块 urllib.parse 对 URL 进行操作,例如解析或者创建 URL。
解析 Parsing
使用 urlparse() 函数解析 URL,返回的是一个 ParseResult 对象。
执行:
函数 urlsplit() 和 urlparse() 功能类似,但是有一点点的不同,因为它不会解析路径中的参数,这样支持标准 RFC 2396。
执行:
查看输出,参数到了路径 path 上面,属性 params 没有了。
urldefrag() 函数去掉 URL 中的 fragments。
执行:
创建 URL
urljoin() 根据当前 URL,从相对路径(relative)构造新的 URL。
执行:
编码、解码 URL 参数
当构造 URL 的参数时,需要编码特殊的字符,例如空格转换为加号,使用 urlencode() 函数,把一个字典转为 URL 格式字符串。
执行:
使用 doseq 参数,把一个序列属性值在 URL 中分隔开。
使用 parse_qs() 和 parse_qsl() 解码 URL 中的查询字符串(query string),他们之间有什么不同请看下面的例子。
执行:
parse_qs() 转换为键值的字典,而 parse_qsl() 转换为一个键值元组的序列。
quote() 和 quote_plus() 为添加到 URL 的字符串进行转义,防止服务端解析 URL 时出现问题。
执行:
quote_plus() 函数要比 quote() 转义更多字符。
unquote() 函数和 unquote_plus() 反解析由 quote() 和 quote_plus() 编码的字符串。
执行: