Clients for online biomedical resources, usually via REST APIs.
Project description
BioClients 
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
Allen • AMP-T2D • Badapple • BindingDb • BioGrid • BiomarkerKB • Bioregistry • BRENDA • CAS • CDC • CFDE • Chem2Bio2RDF • ChEBI • ChEMBL • ChemIdPlus • ClinicalTrials.gov • Disease Ontology • DisGeNet • DNorm • DrugCentral • EMBL-EBI • EnsEMBL • Entrez • FDA • Gene Ontology • GTEx • GWAS Catalog • HUGO • HumanBase • iCite • IDG • JensenLab • LINCS • MaayanLab • Medline • MeSH • MONARCH • MyGene • NCBO • NCATS • OMIM • OncoTree • Open Targets • Panther • PDB • PubChem • PubMed • PubTator • Reactome • RXNorm • STRINGDB • TCGA • UBKG • UMLS • UniProt • Wikidata • WikiPathways
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
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
Built Distribution
Filter files by name, interpreter, ABI, and platform.
If you're not sure about the file name format, learn more about wheel file names.
Copy a direct link to the current filters
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
| Algorithm | Hash digest | |
|---|---|---|
| SHA256 |
ab7c2c792b38a5af73ca1fb1f46b0b4d2343d594804d7c12a80c8300f34ce520
|
|
| MD5 |
1ee620334573a8ba487b47db78d104d6
|
|
| BLAKE2b-256 |
caf6ab97883a3a22cfa7d3d37aef5a5d71d9b4f75ea24b5ec4d9acd68f773945
|
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
| Algorithm | Hash digest | |
|---|---|---|
| SHA256 |
b5a3939e9ce11ec9155ad2ef8c84c81ef6bc28cf723cc4854a65cabab40a6701
|
|
| MD5 |
4a26d228b4d51f87a3ec6ef693748115
|
|
| BLAKE2b-256 |
c7faf12fc9af14af26f95b13d30376a4cc2e34f7a6bf0ffb61a49d78d74325c2
|