Skip to main content

Access to Biological Web Services from Python

Project description

https://raw.githubusercontent.com/cokelaer/bioservices/main/doc/_static/bioservices2_logo_256.png

BIOSERVICES: access to biological web services programmatically

https://badge.fury.io/py/bioservices.svg https://github.com/cokelaer/bioservices/actions/workflows/ci.yml/badge.svg Documentation Status https://static.pepy.tech/personalized-badge/bioservices?period=month&units=international_system&left_color=black&right_color=orange&left_text=Downloads https://anaconda.org/conda-forge/bioservices/badges/version.svg

Codacy-Grade

Python_version_available:

BioServices is tested for Python 3.7, 3.8, 3.9, 3.10

Contributions:

Please join https://github.com/cokelaer/bioservices

Issues:

Please use https://github.com/cokelaer/bioservices/issues

How to cite:

Cokelaer et al. BioServices: a common Python package to access biological Web Services programmatically Bioinformatics (2013) 29 (24): 3241-3242

Documentation:

RTD documentation.

Bioservices is a Python package that provides access to many Bioinformatices Web Services (e.g., UniProt) and a framework to easily implement Web Services 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 several Bioinformatics Web Services. By doing so, elaboration of new applications that combine several of the wrapped Web Services is fostered.

One of the main philosophy of BioServices is to make use of the existing biological databases (not to re-invent new databases) and to alleviates the needs for expertise in Web Services for the developers/users.

BioServices provides access to about 40 Web Services.

Contributors

Maintaining BioServices would not have been possible without users and contributors. Each contribution has been an encouragement to pursue this project. Thanks to all:

https://contrib.rocks/image?repo=cokelaer/bioservices

Quick example

Here is a small example using the UniProt Web Service to search for the zap70 specy in human organism:

>>> from bioservices import UniProt
>>> u = UniProt(verbose=False)
>>> data = u.search("zap70+and+taxonomy_id:9606", frmt="tsv", limit=3,
...                 columns="id,length,accession, gene_names")
>>> print(data)
Entry name   Length  Entry   Gene names
ZAP70_HUMAN  619     P43403  ZAP70 SRK
B4E0E2_HUMAN 185     B4E0E2
RHOH_HUMAN   191     Q15669  RHOH ARHH TTF

More examples and tutorials are available in the On-line documentation

Current services

Here is the list of services available and their testing status.

Service

CI testing

arrayexpress

https://github.com/cokelaer/bioservices/actions/workflows/arrayexpress.yml/badge.svg

bigg

https://github.com/cokelaer/bioservices/actions/workflows/bigg.yml/badge.svg

biocontainers

https://github.com/cokelaer/bioservices/actions/workflows/biocontainers.yml/badge.svg

biodbnet

https://github.com/cokelaer/bioservices/actions/workflows/biodbnet.yml/badge.svg

biogrid

https://github.com/cokelaer/bioservices/actions/workflows/biogrid.yml/badge.svg

biomart

https://github.com/cokelaer/bioservices/actions/workflows/biomart.yml/badge.svg

biomodels

https://github.com/cokelaer/bioservices/actions/workflows/biomodels.yml/badge.svg

chebi

https://github.com/cokelaer/bioservices/actions/workflows/chebi.yml/badge.svg

chembl

https://github.com/cokelaer/bioservices/actions/workflows/chembl.yml/badge.svg

cog

https://github.com/cokelaer/bioservices/actions/workflows/cog.yml/badge.svg

dbfetch

https://github.com/cokelaer/bioservices/actions/workflows/dbfetch.yml/badge.svg

ena

https://github.com/cokelaer/bioservices/actions/workflows/ena.yml/badge.svg

ensembl

https://github.com/cokelaer/bioservices/actions/workflows/ensembl.yml/badge.svg

eutils

https://github.com/cokelaer/bioservices/actions/workflows/eutils.yml/badge.svg

eva

https://github.com/cokelaer/bioservices/actions/workflows/eva.yml/badge.svg

hgnc

https://github.com/cokelaer/bioservices/actions/workflows/hgnc.yml/badge.svg

intact_complex

https://github.com/cokelaer/bioservices/actions/workflows/intact_complex.yml/badge.svg

kegg

https://github.com/cokelaer/bioservices/actions/workflows/kegg.yml/badge.svg

muscle

https://github.com/cokelaer/bioservices/actions/workflows/muscle.yml/badge.svg

mygeneinfo

https://github.com/cokelaer/bioservices/actions/workflows/mygeneinfo.yml/badge.svg

ncbiblast

https://github.com/cokelaer/bioservices/actions/workflows/ncbiblast.yml/badge.svg

omicsdi

https://github.com/cokelaer/bioservices/actions/workflows/omicsdi.yml/badge.svg

omnipath

https://github.com/cokelaer/bioservices/actions/workflows/omnipath.yml/badge.svg

panther

https://github.com/cokelaer/bioservices/actions/workflows/panther.yml/badge.svg

pathwaycommons

https://github.com/cokelaer/bioservices/actions/workflows/pathwaycommons.yml/badge.svg

pdb

https://github.com/cokelaer/bioservices/actions/workflows/pdb.yml/badge.svg

pdbe

https://github.com/cokelaer/bioservices/actions/workflows/pdbe.yml/badge.svg

pfam

https://github.com/cokelaer/bioservices/actions/workflows/pfam.yml/badge.svg

pride

https://github.com/cokelaer/bioservices/actions/workflows/pride.yml/badge.svg

psicquic

https://github.com/cokelaer/bioservices/actions/workflows/psicquic.yml/badge.svg

pubchem

https://github.com/cokelaer/bioservices/actions/workflows/pubchem.yml/badge.svg

quickgo

https://github.com/cokelaer/bioservices/actions/workflows/quickgo.yml/badge.svg

reactome

https://github.com/cokelaer/bioservices/actions/workflows/reactome.yml/badge.svg

rhea

https://github.com/cokelaer/bioservices/actions/workflows/rhea.yml/badge.svg

seqret

https://github.com/cokelaer/bioservices/actions/workflows/seqret.yml/badge.svg

unichem

https://github.com/cokelaer/bioservices/actions/workflows/unichem.yml/badge.svg

uniprot

https://github.com/cokelaer/bioservices/actions/workflows/uniprot.yml/badge.svg

wikipathway

https://github.com/cokelaer/bioservices/actions/workflows/wikipathway.yml/badge.svg

Bioservices command

In version 1.8.2, we included a bioservices command. For now it has only one subcommand to download a NCBI accession number and possibly it genbank or GFF file (if available):

bioservices download-accession --accession K01711.1 --with-gbk

Changelog

Version

Description

1.11.2

  • Update COG service to be more user-friendly and return all pages by default

  • uniprot set progress to False in the search method

  • Merged #250 and #249 user PRs (compress option in uniprot module and logging issue in biodbnet)

1.11.1

1.11.0

  • Fix uniprot limitation of 25 results only (

  • For developers: all services are now refactorised to use services as an attribute rather than a parent class.

  • Remove ReactomeOld and ReactomeAnalysis (deprecated)

  • move rnaseq_ebi (deprecated) to attic for book_keeping

1.10.4

  • Fix v1.10.3 adding missing requirements.txt

1.10.3

  • Update pdb service to use v2 API

  • remove biocarta (website not accesible anymore)

  • Update Chembl (no API changes)

1.10.2

1.10.1

  • allow command line to download genbank and GFF

  • update pride module to use new PRIDE API (July 2022)

  • Fixed KEGG bug #225

1.10.0

  • Update uniprot to use the new API (june 2022)

1.9.0

  • Update unichem to reflect new API

1.8.4

  • biomodels. Fix #208

  • KEGG: fixed #204 #202 and #203

1.8.3

  • Eutils: remove warning due to unreachable URL. Set REST as attribute rather and inheritance.

  • NEW biocontainers module

  • KEGG: add save_pathway method. Fix parsing of structure/pdb entry

  • remove deprecated function from Reactome

1.8.2

  • Fix suds package in code and requirements

1.8.1

  • Integrated a change made in KEGG service (DEFINITON was changed to ORG_CODE)

  • for developers: applied black on all modules

  • switch suds-jurko to new suds community

1.8.0

  • add main standalone application.

  • moved chemspider and clinvitae to the attic

  • removed picr service, not active anymore

1.4.X

  • NEW RNAseq from EBI in rnaseq_ebi module

  • Replaced deprecated HGNC with the official web service from genenames.org

  • Fully updated EUtils since WSDL is now down; implementation uses REST now.

  • Removed the apps/taxonomy module now part of http://github.com/biokit.

1.3.X

  • CACHE files are now stored in a general directory in the home

  • New REST class to use requests package instead of urllib2.

  • Creation of a global configuration file in .config/bioservice/bioservices.cfg

  • NEW services: Reactome, Readseq, Ensembl, EUtils

1.2.X

  • NEW services: BioDBnet, BioDBNet, MUSCLE, PathwayCommons, GeneProf

1.1.X

  • NEW services: biocarta, pfam, ChEBI, UniChem

1.0.0:

  • first stable release

0.9.X:

  • NEW services: BioModels, Kegg, Reactome, Chembl, PICR, QuickGO, Rhea, UniProt,WSDbfetch, NCBIblast, PSICQUIC, Wikipath

Project details


Release history Release notifications | RSS feed

Download files

Download the file for your platform. If you're not sure which to choose, learn more about installing packages.

Source Distribution

bioservices-1.11.2.tar.gz (191.9 kB view details)

Uploaded Source

File details

Details for the file bioservices-1.11.2.tar.gz.

File metadata

  • Download URL: bioservices-1.11.2.tar.gz
  • Upload date:
  • Size: 191.9 kB
  • Tags: Source
  • Uploaded using Trusted Publishing? No
  • Uploaded via: twine/4.0.1 CPython/3.11.2

File hashes

Hashes for bioservices-1.11.2.tar.gz
Algorithm Hash digest
SHA256 31baaab4ab813b93f79995ba8cad431a16cbee99e1b0c6f9e419dd4be0c73a9e
MD5 c5873e76f98b9ab6e08fb19d007b7e5f
BLAKE2b-256 8d0476af437da5bdb93ae35157c1d39bd74dceca20283156ccefd6b3d965cc8c

See more details on using hashes here.

Supported by

AWS AWS Cloud computing and Security Sponsor Datadog Datadog Monitoring Fastly Fastly CDN Google Google Download Analytics Microsoft Microsoft PSF Sponsor Pingdom Pingdom Monitoring Sentry Sentry Error logging StatusPage StatusPage Status page