Skip to main content

Clients for online biomedical resources, usually via REST APIs.

Project description

BioClients BioClients logo

Python package for access to online biomedical resources, usually via REST APIs. Modules generally include Client.py for command-line use and Utils.py for integration into other code. With the advent of HTTP web services, first SOAP/XML and then mostly REST/JSON, many online APIs require very similar methods for data search, requests and transforms into usable formats, often TSV.

Availability and installation

Installing from PyPI

Releases at https://pypi.org/project/BioClients/.

pip3 install BioClients

However, current development snapshot may included additional functionality.

Installing from source

Source at https://github.com/jeremyjyang/BioClients

(First download or clone.)

Install build package.

python3 -m pip install --upgrade build

Install using build. This supercedes the deprecated setup.py install and easy_install methods.

cd BioClients
python3 -m build

Dependencies

  • Python 3.10+
  • Python packages: pandas, requests, yaml, psycopg2, tqdm, etc. (See conda/environment.yml).

Modules

AllenAMP-T2DBadappleBindingDbBioGridBiomarkerKBBioregistryBRENDACASCDCCFDEChem2Bio2RDFChEBIChEMBLChemIdPlusClinicalTrials.govDisease OntologyDisGeNetDNormDrugCentralEMBL-EBIEnsEMBLEntrezFDAGene OntologyGTExGWAS CatalogHUGOHumanBaseiCiteIDGJensenLabLINCSMaayanLabMedlineMeSHMONARCHMyGeneNCBONCATSOMIMOncoTreeOpen TargetsPantherPDBPubChemPubMedPubTatorReactomeRXNormSTRINGDBTCGAUBKGUMLSUniProtWikidataWikiPathways

Miscellaneous utilities: UTIL

Usage Example

python3 -m BioClients.pubchem.Client -h

Design pattern

Generally each module includes command-line app Client.py which calls functions in a corresponding Utils.py, providing all capabilities by import of the module. Command-line apps not API clients are generally named App.py. Functions can write to an output file or return a Pandas dataframe (if output file unspecified).

Data structures and formats, XML, JSON, and TSV

BioClients is designed to be simple and practical, and XML, JSON and TSV are likewise simple in many respects, yet a great deal of conceptual and technological progress is reflected. XML and JSON can represent arbitrarily complex data objects, comprised of nested lists, dictionaries, and trees of primary types. TSV represents tables of rows and columns, related by common keys, reflecting the development of SQL and relational databases. Transforming JSON to TSV, as these clients generally do, projects data objects to tables useful for many applications (e.g. machine learning).

Conda environment

BioClients depends on numerous Python packages. (See conda/environment.yml). The following commands create and activate a Conda environment bioclients:

$ conda env create -f conda/environment.yml

If that fails, try:

$ conda create -n bioclients -c conda-forge pandas readline requests pyyaml tqdm psycopg2 numpy scipy scikit-learn matplotlib

then:

$ conda activate bioclients
(bioclients) $ pip install BioClients

and install additional packages as needed via pip, e.g.:

(bioclients) $ pip install sqlalchemy
(bioclients) $ pip install pyquery
(bioclients) $ pip install mygene
(bioclients) $ pip install click
(bioclients) $ pip install PyMuPDF
(bioclients) $ pip install py2neo

Venv, etc.

It may not be necessary or advantageous to configure an environment for all of BioClients functionality. Specific modules may be supported with venv environments with required dependencies. Module documentation should indicate needed package dependencies.

Project details


Download files

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

Source Distribution

BioClients-0.2.30.tar.gz (213.4 kB view details)

Uploaded Source

Built Distribution

If you're not sure about the file name format, learn more about wheel file names.

BioClients-0.2.30-py3-none-any.whl (330.6 kB view details)

Uploaded Python 3

File details

Details for the file BioClients-0.2.30.tar.gz.

File metadata

  • Download URL: BioClients-0.2.30.tar.gz
  • Upload date:
  • Size: 213.4 kB
  • Tags: Source
  • Uploaded using Trusted Publishing? No
  • Uploaded via: twine/5.0.0 CPython/3.12.3

File hashes

Hashes for BioClients-0.2.30.tar.gz
Algorithm Hash digest
SHA256 ab7c2c792b38a5af73ca1fb1f46b0b4d2343d594804d7c12a80c8300f34ce520
MD5 1ee620334573a8ba487b47db78d104d6
BLAKE2b-256 caf6ab97883a3a22cfa7d3d37aef5a5d71d9b4f75ea24b5ec4d9acd68f773945

See more details on using hashes here.

File details

Details for the file BioClients-0.2.30-py3-none-any.whl.

File metadata

  • Download URL: BioClients-0.2.30-py3-none-any.whl
  • Upload date:
  • Size: 330.6 kB
  • Tags: Python 3
  • Uploaded using Trusted Publishing? No
  • Uploaded via: twine/5.0.0 CPython/3.12.3

File hashes

Hashes for BioClients-0.2.30-py3-none-any.whl
Algorithm Hash digest
SHA256 b5a3939e9ce11ec9155ad2ef8c84c81ef6bc28cf723cc4854a65cabab40a6701
MD5 4a26d228b4d51f87a3ec6ef693748115
BLAKE2b-256 c7faf12fc9af14af26f95b13d30376a4cc2e34f7a6bf0ffb61a49d78d74325c2

See more details on using hashes here.

Supported by

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