API - Package Lookup¶
Query Interface¶
-
yarg.get(package_name, pypi_server='https://pypi.python.org/pypi/')¶ Construct a request to the PyPI server and returns an instance of
yarg.package.Package.Parameters: - package_name – case sensitive name of the package on the PyPI server.
- pypi_server –
(option) URL to the PyPI server.
>>> import yarg >>> package = yarg.get('yarg') <Package yarg>
Package Object¶
-
class
yarg.package.Package(pypi_dict)¶ A PyPI package.
Parameters: pypi_dict – A dictionary retrieved from the PyPI server. >>> package = yarg.get('yarg') >>> package.author Author(name='Kura', email='kura@kura.io')
-
bugtracker¶ >>> package = yarg.get('yarg') >>> package.bugtracker 'https://github.com/kura/yarg/issues'
-
classifiers¶ >>> package = yarg.get('yarg') >>> package.classifiers ['License :: OSI Approved :: MIT License', 'Programming Language :: Python :: 2.7', 'Programming Language :: Python :: 3.4']
-
description¶ >>> package = yarg.get('yarg') >>> package.description 'A super long description, usually uploaded from the README'
-
docs¶ >>> package = yarg.get('yarg') >>> package.docs 'https://yarg.readthedocs.org/en/latest'
-
downloads¶ >>> package = yarg.get('yarg') >>> package.downloads Downloads(day=50100, week=367941, month=1601938) # I wish
-
has_egg¶ Returns True if one of the
yarg.release.Releaseobjects in the latest set of release files is egg format. Returns False if not.>>> package = yarg.get('yarg') >>> package.has_egg False
-
has_source¶ Returns True if one of the
yarg.release.Releaseobjects in the latest set of release files is source format. Returns False if not.>>> package = yarg.get('yarg') >>> package.has_source True
-
has_wheel¶ Returns True if one of the
yarg.release.Releaseobjects in the latest set of release files is wheel format. Returns False if not.>>> package = yarg.get('yarg') >>> package.has_wheel True
-
homepage¶ >>> package = yarg.get('yarg') >>> package.homepage 'https://kura.io/yarg/'
-
latest_release¶ A list of
yarg.release.Releaseobjects for each file in the latest release.>>> package = yarg.get('yarg') >>> package.latest_release [<Release 0.1.0>, <Release 0.1.0>]
-
latest_release_id¶ >>> package = yarg.get('yarg') >>> package.latest_release_id '0.1.0'
-
license¶ >>> package = yarg.get('yarg') >>> package.license 'MIT'
-
license_from_classifiers¶ >>> package = yarg.get('yarg') >>> package.license_from_classifiers 'MIT License'
-
maintainer¶ >>> package = yarg.get('yarg') >>> package.maintainer Maintainer(name='Kura', email='kura@kura.io')
-
name¶ >>> package = yarg.get('yarg') >>> package.name 'yarg'
-
pypi_url¶ >>> package = yarg.get('yarg') >>> package.url 'https://pypi.python.org/pypi/yarg'
-
python_implementations¶ Returns a list of Python implementation strings that the package has listed in
yarg.Release.classifiers.>>> package = yarg.get('yarg') >>> package.python_implementations ['CPython', 'PyPy']
-
python_versions¶ Returns a list of Python version strings that the package has listed in
yarg.Release.classifiers.>>> package = yarg.get('yarg') >>> package.python_versions ['2.6', '2.7', '3.3', '3.4']
-
release(release_id)¶ A list of
yarg.release.Releaseobjects for each file in a release.Parameters: release_id – A pypi release id.
>>> package = yarg.get('yarg') >>> last_release = yarg.releases[-1] >>> package.release(last_release) [<Release 0.1.0>, <Release 0.1.0>]
-
release_ids¶ >>> package = yarg.get('yarg') >>> package.release_ids ['0.0.1', '0.0.5', '0.1.0']
-
summary¶ >>> package = yarg.get('yarg') >>> package.summary 'Some random summary stuff'
Release Object¶
-
class
yarg.release.Release(release_id, pypi_dict)¶ A release file from PyPI.
Parameters: - release_id – A release id.
- pypi_dict – A dictionary of a release file.
-
filename¶ >>> package = yarg.get('yarg') >>> v = "0.1.0" >>> r = package.release(v) >>> r.filename 'yarg-0.1.0-py27-none-any.whl'
-
has_sig¶ >>> package = yarg.get('yarg') >>> v = "0.1.0" >>> r = package.release(v) >>> r.has_sig True
-
md5_digest¶ >>> package = yarg.get('yarg') >>> v = "0.1.0" >>> r = package.release(v) >>> r.md5_digest 'bec88e1c1765ca6177360e8f37b44c5c'
-
package_type¶ >>> package = yarg.get('yarg') >>> v = "0.1.0" >>> r = package.release(v) >>> r.package_type 'wheel'
-
python_version¶ >>> package = yarg.get('yarg') >>> v = "0.1.0" >>> r = package.release(v) >>> r.python_version '2.7'
-
release_id¶ >>> package = yarg.get('yarg') >>> v = "0.1.0" >>> r = package.release(v) >>> r[0].release_id '0.1.0'
-
size¶ >>> package = yarg.get('yarg') >>> v = "0.1.0" >>> r = package.release(v) >>> r.size 52941
-
uploaded¶ >>> package = yarg.get('yarg') >>> v = "0.1.0" >>> r = package.release(v) >>> r.uploaded datetime.datime(2014, 8, 7, 21, 26, 19)
-
url¶ >>> package = yarg.get('yarg') >>> v = "0.1.0" >>> r = package.release(v) >>> r.url 'https://pypi.python.org/packages/2.7/y/yarg/yarg...'
Exceptions and Errors¶
-
class
yarg.exceptions.HTTPError(*args, **kwargs)¶ A catchall HTTPError exception to handle HTTP errors when using
yarg.get().This exception is also loaded at
yarg.HTTPErrorfor ease of access.Member: status_code -
errno¶ exception errno
-
filename¶ exception filename
-
strerror¶ exception strerror
-
