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.Release
objects 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.Release
objects 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.Release
objects 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.Release
objects 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.Release
objects 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.HTTPError
for ease of access.Member: status_code -
errno
¶ exception errno
-
filename
¶ exception filename
-
strerror
¶ exception strerror
-