URL Normalization for Python
url-normalize的Python项目详细描述
url规范化
uri规范化函数:
- 处理IDN域
- 始终以小写字符提供uri方案。
- 始终以小写字符提供主机(如果有)
- 只在必要时执行百分比编码。
- 百分比编码时始终使用大写A到F字符。
- 防止非相对uri路径中出现点段。
- 对于定义默认权限的方案,如果需要默认权限,请使用空权限。
- 对于将空路径定义为等同于路径“/”的方案,请使用“/”。
- 对于定义端口的方案,如果需要默认端口,请使用空端口
- uri的所有部分都必须是来自unicode字符串的utf-8编码nfc
灵感来自Sam Ruby的urlnorm.py:http://intertwingly.net/blog/2004/08/04/Urlnorm
示例:
$ pip install url-normalize Collecting url-normalize ... Successfully installed future-0.16.0 url-normalize-1.3.3 $ python Python 3.6.1 (default, Jul 82017, 05:00:20)[GCC 4.9.2] on linux Type "help", "copyright", "credits" or "license"for more information. > from url_normalize import url_normalize > print(url_normalize('www.foo.com:80/foo')) > https://www.foo.com/foo
历史记录:
- 1.4.1:向url添加可选的param default_scheme_normalize
- 1.4.0:一点代码重构和清理
- 1.3.3:支持空字符串和双斜杠URL(//domain.tld)
- 1.3.2:相同的代码同时支持Python3和Python2
- 1.3.1:Python3兼容性
- 1.2.1:PEP8,setup.py
- 1.1.2:对Shebang的支持(!)网址
- 1.1.1:在适当的时候默认使用“http”模式
- 1.1.0:添加了对IDN域的处理
- 1.0.0:代码PEP8
- 0.1.0:从Sam Ruby的urlnorm.py派生
许可证:“Python”(PSF)许可证