快速引用和取消引用的网址。
urlquote的Python项目详细描述
urlquote
python的快速百分比编码/解码。
此库不打算替代urllib。urllib
是python标准库的一部分,您应该选择引用和取消引用url。但是,如果url的引用或不引用被认为是性能瓶颈,并且您可以使用下面描述的编码,那么一定要使用这个库。
用法
fromurlquoteimportquotequoted=quote('/El Niño/')assert(quoted=='/El%20Ni%C3%B1o/'.encode('utf-8'))
兼容性
由于这个库使用一个cffi
接口,所以它应该可以在任何版本的python中正常工作。对于linux,必须根据libc older版本或与使用控制盘的平台上的libc版本相同的版本来构建控制盘。
安装
pip install urlquote
quote
对utf-8编码字节进行操作。如果传递一个字符串,它将首先将其编码为utf-8。它将始终返回utf-8编码字节。unquote
的行为方式相同。
编码
提供以下编码。DEFAULT_QUOTING
用于未指定引用参数的情况。
Name | Additional encoded characters |
---|---|
SIMPLE_QUOTING | |
DEFAULT_QUOTING | space, ^{ |
QUERY_QUOTING | space, ^{ |
PATH_SEGMENT_QUOTING | space, ^{ |
USERINFO_QUOTING | space, ^{ |
PYTHON_3_7_QUOTING | space, ^{ |
不可打印和非标准的ascii字符总是被引用。在每一个python版本中,PYTHON_3_7_QUOTING
的工作方式都是相同的,名称只指python 3.7中使用的urllib
默认编码。
开发
这个库是一个包裹在生锈的板条箱^{
要构建它,您需要install Rust and Cargo。然后您就可以继续使用:
python setup.py build sdist bdist_wheel
要执行python测试,请使用:
pip install -e . pytest test.py
也有一些只生锈的单元测试。要执行它们,请切换到rust
子目录并调用。
cargo test
安装了夜班工具链后,您还可以使用以下命令调用Rust Only基准:
cargo +nightly bench
支架
这个工具是在麻省理工学院的许可下提供的,没有任何保证或sla。您可以将它作为任何用途的一部分使用,但操作它的责任在于您。我们很感激你的反馈。欢迎对github的贡献。