Differences between revisions 20 and 48 (spanning 28 versions)
Revision 20 as of 2008-12-12 14:39:56
Size: 3031
Comment: undo spam
Revision 48 as of 2018-07-10 16:43:27
Size: 348
Editor: EWDurbin
Comment:
Deletions are marked like this. Additions are marked like this.
Line 1: Line 1:
= PyPI's XML-RPC methods = [[CheeseShopDev|PyPI]] APIs: [[PyPISimple|Simple]], [[PyPIJSON|JSON]], '''XMLRPC'''.
Line 3: Line 3:
Example usage:
{{{
>>> import xmlrpclib
>>> server = xmlrpclib.Server('http://pypi.python.org/pypi')
>>> server.package_releases('roundup')
['1.1.2']
>>> server.package_urls('roundup', '1.1.2')
[{'has_sig': True, 'comment_text': '', 'python_version': 'source', 'url': 'http://pypi.python.org/packages/source/r/roundup/roundup-1.1.2.tar.gz', 'md5_digest': '7c395da56412e263d7600fa7f0afa2e5', 'downloads': 2989, 'filename': 'roundup-1.1.2.tar.gz', 'packagetype': 'sdist', 'size': 876455}, {'has_sig': True, 'comment_text': '', 'python_version': 'any', 'url': 'http://pypi.python.org/packages/any/r/roundup/roundup-1.1.2.win32.exe', 'md5_digest': '983d565b0b87f83f1b6460e54554a845', 'downloads': 2020, 'filename': 'roundup-1.1.2.win32.exe', 'packagetype': 'bdist_wininst', 'size': 614270}]
}}}
= The XMLRPC interface for PyPI is considered legacy and should not be used. =
= Use the Simple and JSON APIs. =
For documentation on XMLRPC methods, see https://warehouse.readthedocs.io/api-reference/xml-rpc/
Line 13: Line 7:
'''list_packages()'''
  Retrieve a list of the package names registered with the package index. Returns a list of name strings.

'''package_releases(package_name, show_hidden=False)'''
  Retrieve a list of the releases registered for the given package_name. Returns a list with all version strings if show_hidden is True or only the non-hidden ones otherwise.

'''release_urls(package_name, version)'''
  Retrieve a list of download URLs for the given package release. Returns a list of dicts with the following keys:
     * url
     * packagetype ('sdist', 'bdist', etc)
     * filename
     * size
     * md5_digest
     * downloads
     * has_sig
     * python_version (required version, or 'source', or 'any')
     * comment_text

'''release_data(package_name, version)'''
  Retrieve metadata describing a specific package release. Returns a dict with keys for:

     * name
     * version
     * stable_version
     * author
     * author_email
     * maintainer
     * maintainer_email
     * home_page
     * license
     * summary
     * description
     * keywords
     * platform
     * download_url
     * classifiers (list of classifier strings)

'''search(spec[, operator])'''
   Search the package database using the indicated search spec.

 The spec may include any of the keywords described in the above list (except 'stable_version' and 'classifiers'), for example: {'description': 'spam'} will search description fields. Within the spec, a field's value can be a string or a list of strings (the values within the list are combined with an OR), for example: {'name': ['foo', 'bar']}.

 Arguments for different fields are combined using either "and" (the default) or "or". Example: search({'name': 'foo', 'description': 'bar'}, 'or').

 The results are returned as a list of dicts {'name': package name, 'version': package release version, 'summary': package release summary}

'''changelog(since)'''
  Retrieve a list of four-tuples (name, version, timestamp, action) since the given timestamp. All timestamps are UTC values. The argument is a UTC integer seconds since the epoch.

----

PyPI APIs: Simple, JSON, XMLRPC.

The XMLRPC interface for PyPI is considered legacy and should not be used.

Use the Simple and JSON APIs.

For documentation on XMLRPC methods, see https://warehouse.readthedocs.io/api-reference/xml-rpc/

CategoryDocumentation CategoryDocumentation

PyPIXmlRpc (last edited 2018-07-10 16:43:27 by EWDurbin)

Unable to edit the page? See the FrontPage for instructions.