Package musicbrainz2 :: Module webservice :: Class WebService
[frames] | no frames]

Class WebService

source code

 object --+    
          |    
IWebService --+
              |
             WebService

An interface to the MusicBrainz XML web service via HTTP.

By default, this class uses the MusicBrainz server but may be configured for accessing other servers as well using the constructor. This implements IWebService, so additional documentation on method parameters can be found there.

Instance Methods
 
__init__(self, host='musicbrainz.org', port=80, pathPrefix='/ws', username=None, password=None, realm='musicbrainz.org', opener=None)
Constructor.
source code
 
get(self, entity, id_, include=(), filter={}, version='1')
Query the web service via HTTP-GET.
source code
 
post(self, entity, id_, data, version='1')
Send data to the web service via HTTP-POST.
source code

Inherited from object: __delattr__, __getattribute__, __hash__, __new__, __reduce__, __reduce_ex__, __repr__, __setattr__, __str__

Properties

Inherited from object: __class__

Method Details

__init__(self, host='musicbrainz.org', port=80, pathPrefix='/ws', username=None, password=None, realm='musicbrainz.org', opener=None)
(Constructor)

source code 

Constructor.

This can be used without parameters. In this case, the MusicBrainz server will be used.
Parameters:
  • host - a string containing a host name
  • port - an integer containing a port number
  • pathPrefix - a string prepended to all URLs
  • username - a string containing a MusicBrainz user name
  • password - a string containing the user's password
  • realm - a string containing the realm used for authentication
  • opener - an urllib2.OpenerDirector object used for queries
Overrides: object.__init__

get(self, entity, id_, include=(), filter={}, version='1')

source code 

Query the web service via HTTP-GET.

Returns a file-like object containing the result or raises a WebServiceError. Conditions leading to errors may be invalid entities, IDs, include or filter parameters and unsupported version numbers.
Returns:
a file-like object
Raises:
Overrides: IWebService.get

See Also: IWebService.get

post(self, entity, id_, data, version='1')

source code 

Send data to the web service via HTTP-POST.

Note that this may require authentication. You can set user name, password and realm in the constructor.
Returns:
a file-like object
Raises:
Overrides: IWebService.post

See Also: IWebService.post