You can not select more than 25 topics
Topics must start with a letter or number, can include dashes ('-') and can be up to 35 characters long.
jianglk.darker
7ee447c011
|
4 months ago | |
---|---|---|
.. | ||
docs | 4 months ago | |
old/uritemplate.py | 4 months ago | |
tests | 4 months ago | |
uritemplate | 4 months ago | |
.mailmap | 4 months ago | |
.travis.yml | 4 months ago | |
AUTHORS.rst | 4 months ago | |
Android.bp | 4 months ago | |
HISTORY.rst | 4 months ago | |
LICENSE | 4 months ago | |
LICENSE.APACHE | 4 months ago | |
LICENSE.BSD | 4 months ago | |
MANIFEST.in | 4 months ago | |
METADATA | 4 months ago | |
MODULE_LICENSE_APACHE2 | 4 months ago | |
MODULE_LICENSE_BSD | 4 months ago | |
NOTICE | 4 months ago | |
OWNERS | 4 months ago | |
README.rst | 4 months ago | |
setup.cfg | 4 months ago | |
setup.py | 4 months ago | |
tox.ini | 4 months ago |
README.rst
uritemplate =========== Documentation_ -- GitHub_ -- Travis-CI_ Simple python library to deal with `URI Templates`_. The API looks like .. code-block:: python from uritemplate import URITemplate, expand # NOTE: URI params must be strings not integers gist_uri = 'https://api.github.com/users/sigmavirus24/gists{/gist_id}' t = URITemplate(gist_uri) print(t.expand(gist_id='123456')) # => https://api.github.com/users/sigmavirus24/gists/123456 # or print(expand(gist_uri, gist_id='123456')) # also t.expand({'gist_id': '123456'}) print(expand(gist_uri, {'gist_id': '123456'})) Where it might be useful to have a class .. code-block:: python import requests class GitHubUser(object): url = URITemplate('https://api.github.com/user{/login}') def __init__(self, name): self.api_url = url.expand(login=name) response = requests.get(self.api_url) if response.status_code == 200: self.__dict__.update(response.json()) When the module containing this class is loaded, ``GitHubUser.url`` is evaluated and so the template is created once. It's often hard to notice in Python, but object creation can consume a great deal of time and so can the ``re`` module which uritemplate relies on. Constructing the object once should reduce the amount of time your code takes to run. Installing ---------- :: pip install uritemplate License ------- Modified BSD license_ .. _Documentation: https://uritemplate.readthedocs.io/ .. _GitHub: https://github.com/python-hyper/uritemplate .. _Travis-CI: https://travis-ci.org/python-hyper/uritemplate .. _URI Templates: http://tools.ietf.org/html/rfc6570 .. _license: https://github.com/python-hyper/uritemplate/blob/master/LICENSE