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

Source at https://github.com/jeremyjyang/BioClients; releases available via https://pypi.org/project/BioClients/.

pip3 install BioClients

However, current development snapshot may included additional functionality.

(First download or clone.)

cd BioClients
python3 setup.py install

Dependencies

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

Modules

AllenAMP-T2DBindingDbBioGridBiomarkerKBBioregistryBRENDACASCDCCFDEChem2Bio2RDFChEBIChEMBLChemIdPlusClinicalTrials.govDisease OntologyDisGeNetDNormDrugCentralEMBL-EBIEnsEMBLFDAGene 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
conda activate bioclients

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.19.tar.gz (208.6 kB view details)

Uploaded Source

Built Distribution

BioClients-0.2.19-py3-none-any.whl (322.8 kB view details)

Uploaded Python 3

File details

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

File metadata

  • Download URL: BioClients-0.2.19.tar.gz
  • Upload date:
  • Size: 208.6 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.19.tar.gz
Algorithm Hash digest
SHA256 42526810521bcb11033eaa9a65a3cea75334bb3621ca011f0b2d624972aa754b
MD5 fbc063b0bbc0fdb3a609d45146834098
BLAKE2b-256 fa0deb3624ca41f8125ea355ff7526c1d89077bf6080e07fee736280b72d31b4

See more details on using hashes here.

File details

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

File metadata

  • Download URL: BioClients-0.2.19-py3-none-any.whl
  • Upload date:
  • Size: 322.8 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.19-py3-none-any.whl
Algorithm Hash digest
SHA256 a66f2650e903c02785d0281d7f75295d70b1892229ad02acf352e15615849112
MD5 c2ede09f248f93c3505a43142037747e
BLAKE2b-256 8264e0fdb4002e9edf63778bd3920d9437c81ab4a55165f430881147913118eb

See more details on using hashes here.

Supported by

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