Yet another URL library
Project description
yarl
Introduction
Url could be constructed from str:
>>> from yarl import URL >>> url = URL('https://www.python.org/~guido?arg=1#frag') >>> url URL('https://www.python.org/~guido?arg=1#frag')
All url parts: scheme, host, port, path, query and fragment are accessible by properties:
>>> url.scheme 'https' >>> url.host 'www.python.org' >>> url.path '/~guido' >>> url.query_string 'arg=1' >>> url.query <MultiDictProxy('arg': '1')> >>> url.fragment 'frag'
All url manipulations produces a new url object:
>>> url.parent / 'downloads/source' URL('https://www.python.org/downloads/source')
Strings in URL object are always unquoted, for getting quoted version please convert URL into bytes:
>>> bytes(url) b'https://www.python.org/%7Eguido?arg=1#frag'
Constructing URL from bytes performs unquoting as well:
>>> URL(b'https://www.python.org/%7Eguido') URL('https://www.python.org/~guido')
For full documentation please read https:://yarl.readthedocs.org.
Installation
$ pip install yarl
The library is Python 3 only!
Dependencies
YARL requires multidict library.
API documentation
The documentation is located at https://yarl.readthedocs.org
Source code
The project is hosted on GitHub
Please file an issue on the bug tracker if you have found a bug or have some suggestion in order to improve the library.
The library uses Travis for Continuous Integration.
Discussion list
aio-libs google group: https://groups.google.com/forum/#!forum/aio-libs
Feel free to post your questions and ideas here.
CHANGES
0.1.0 (2016-09-06)
The library was deeply refactored, bytes are gone away but all accepted strings are encoded if needed.
0.0.1 (2016-08-30)
The first release.
Project details
Release history Release notifications | RSS feed
Download files
Download the file for your platform. If you're not sure which to choose, learn more about installing packages.