bioservices 1.2.6 documentation

BIOSERVICES: a Python package to access biological web services programmatically


Citations:If you use BioServices, please cite Cokelaer et al, Bioinformatics (2013). See bioinformatics link for details.


Contributions to implement new wrappers are more than welcome. See BioServices wiki to join the development, and the Developer Guide on how to implement new wrappers. Although contributors have their names in the header files, you can also look at the Contributors directly.

Overview and Installation


BioServices is a Python package that provides access to many Bioinformatics Web Services (e.g., UniProt) and a framework to easily implement Web Service wrappers (based on WSDL/SOAP or REST protocols).

The primary goal of BioServices is to use Python as a glue language to provide a programmatic access to Biological Web Services. By doing so, elaboration of new applications that combine several Web Services should be fostered.

One of the main philosophy of BioServices is to make use of the existing REST or SOAP/WSDL Web Services and therefore existing databases, not to re-invent new databases.

The first release of BioServices provides a wrapping to more than 18 Web Services (more if we consider BioMart and PSICQUIC portals that link to many other Web Services).

Here is a list of Web Services that can already be accessed from BioServices:

bioservices.arrayexpress.ArrayExpress Interface to the ArrayExpress service
bioservices.biodbnet.BioDBNet Interface to the BioDBNet service
bioservices.biomodels.BioModels Interface to the BioModels service
bioservices.biomart.BioMart Interface to the BioMart service
bioservices.chebi.ChEBI Interface to ChEBI
bioservices.chembldb.ChEMBLdb Interface to ChEMBLdb
bioservices.eutils.EUtils Interface to NCBI Entrez Utilities service
bioservices.geneprof.GeneProf Interface to the GeneProf service
bioservices.kegg.Kegg Interface to the KEGG service
bioservices.hgnc.HGNC Interface to the HGNC service
bioservices.miriam.Miriam Interface to the MIRIAM service
bioservices.muscle.MUSCLE Interface to the MUSCLE service.
bioservices.pdb.PDB Interface to part of the PDB service
bioservices.pathwaycommons.PathwayCommons Interface to the PathwayCommons service
bioservices.picr.PICR Interface to the PICR (Protein Identifier Cross reference) service
bioservices.quickgo.QuickGO Interface to the QuickGO service
bioservices.rhea.Rhea Interface to the Rhea service
bioservices.unichem.UniChem Interface to the UniChem service
bioservices.uniprot.UniProt Interface to the UniProt service
bioservices.wsdbfetch.WSDbfetch Interface to WSDbfetch service
bioservices.ncbiblast.NCBIblast Interface to the NCBIblast service.
bioservices.psicquic.PSICQUIC Interface to the PSICQUIC service
bioservices.wikipathway.Wikipathway Interface to Pathway service

The links above refers to the official web site of each service (right column) and our reference guide (left column) that provides an exhaustive documentation. For tutorials and quick start please follow the links below.


BioServices is available on PyPi, the Python package repository. The following command should install BioServices and its dependencies automatically provided you have pip on your system:

pip install bioservices

If not, please see the external pip installation page or pip installation entry. You may also find information in the troubleshootings page section about known issues.

Regarding the dependencies, BioServices depends on the following packages: BeautifulSoup4 (for parsing XML), SOAPpy and suds (to access to SOAP/WSDL services; suds is used by ChEBI only for which SOAPpy fails to correctly fetch the service) and easydev. All those packages should be installed automatically when using pip installer.