Intro
biothings_client is an easy-to-use Python wrapper to access any Biothings.api -based backend service. Currently, the following clients are available:
gene - The client for MyGene.Info, which provides access to gene objects.
variant - The client MyVariant.Info, which provides access to genetic variant objects.
chem - The client for MyChem.Info, which provides access to chemical/drug objects.
disease - The client for MyDisease.Info, which provides access to disease objects.
geneset - The client for MyGeneset.Info, which provides access to geneset/pathway objects.
taxon - The client for MyTaxon.Info, which provides access to taxon objects.
Support
Python >=3.7
Optional dependencies
dataframe support (install using pip install biothings_client[dataframe])
pandas is required for returning query results as a DataFrame.
caching support (install using pip install biothings_client[caching], requires Python >=3.8)
Allows local caching of client queries to a SQLite database. Requires:
Installation
Option 1. Install from pypi repository using pip:
pip install biothings_clientOption 2. Install the latest commit from the github repository using pip:
pip install -e git+https://github.com/biothings/biothings_client.py#egg=biothings_client
Version history
Tutorial
See the quick start tutorial at the biothings_client doc page.
Documentation
Usage
Synchronous client.
from biothings_client import get_client # get a client for variant objects mv = get_client("variant") mv.getvariant("chr7:g.140453134T>C") # output below is collapsed {"_id": "chr7:g.140453134T>C", "_version": 1, "chrom": "7", "cadd": {...}, "clinvar": {...}, "cosmic": {...}, "dbnsfp": {...}, "dbsnp": {...}, "docm": {...}, "hg19": {'end': 140453134, 'start': 140453134}, "mutdb": {...}, "snpeff": {...}, "vcf": { "alt": "C", "position": "140453134", "ref": "T" }} # get a client for gene objects mg = get_client("gene") mg.getgene(1017, 'name,symbol,refseq') {'_id': '1017', '_score': 21.03413, 'name': 'cyclin dependent kinase 2', 'refseq': {'genomic': ['NC_000012.12', 'NC_018923.2', 'NG_034014.1'], 'protein': ['NP_001277159.1', 'NP_001789.2', 'NP_439892.2', 'XP_011536034.1'], 'rna': ['NM_001290230.1', 'NM_001798.4', 'NM_052827.3', 'XM_011537732.1'], 'translation': [{'protein': 'NP_001789.2', 'rna': 'NM_001798.4'}, {'protein': 'NP_439892.2', 'rna': 'NM_052827.3'}, {'protein': 'NP_001277159.1', 'rna': 'NM_001290230.1'}, {'protein': 'XP_011536034.1', 'rna': 'XM_011537732.1'}]}, 'symbol': 'CDK2'} # get a client for chems/drugs md = get_client("chem") md.getchem("ATBDZSAENDYQDW-UHFFFAOYSA-N", fields="pubchem") {'_id': 'ATBDZSAENDYQDW-UHFFFAOYSA-N', '_version': 1, 'pubchem': {'chiral_atom_count': 0, 'chiral_bond_count': 0, 'cid': 'CID4080429', 'complexity': 250, 'covalently-bonded_unit_count': 1, 'defined_atom_stereocenter_count': 0, 'defined_bond_stereocenter_count': 0, 'exact_mass': 184.019415, 'formal_charge': 0, 'heavy_atom_count': 12, 'hydrogen_bond_acceptor_count': 3, 'hydrogen_bond_donor_count': 1, 'inchi': 'InChI=1S/C8H8O3S/c1-2-7-4-3-5-8(6-7)12(9,10)11/h2-6H,1H2,(H,9,10,11)', 'inchi_key': 'ATBDZSAENDYQDW-UHFFFAOYSA-N', 'isotope_atom_count': 0, 'iupac': {'traditional': '3-vinylbesylic acid'}, 'molecular_formula': 'C8H8O3S', 'molecular_weight': 184.21232, 'monoisotopic_weight': 184.019415, 'rotatable_bond_count': 2, 'smiles': {'isomeric': 'C=CC1=CC(=CC=C1)S(=O)(=O)O'}, 'tautomers_count': 1, 'topological_polar_surface_area': 62.8, 'undefined_atom_stereocenter_count': 0, 'undefined_bond_stereocenter_count': 0, 'xlogp': 1.4}} # get a client for taxa mt = get_client("taxon") mt.gettaxon(9606) {'_id': '9606', '_version': 1, 'authority': ['homo sapiens linnaeus, 1758'], 'common_name': 'man', 'genbank_common_name': 'human', 'has_gene': True, 'lineage': [9606, 9605, 207598, 9604, 314295, 9526, 314293, 376913, 9443, 314146, 1437010, 9347, 32525, 40674, 32524, 32523, 1338369, 8287, 117571, 117570, 7776, 7742, 89593, 7711, 33511, 33213, 6072, 33208, 33154, 2759, 131567, 1], 'other_names': ['humans'], 'parent_taxid': 9605, 'rank': 'species', 'scientific_name': 'homo sapiens', 'taxid': 9606, 'uniprot_name': 'homo sapiens'}Asynchronous client.
from biothings_client import get_async_client # get a client for variant objects mv = get_async_client("variant") await mv.getvariant("chr7:g.140453134T>C") # get a client for gene objects mg = get_async_client("gene") await mg.getgene(1017, 'name,symbol,refseq') # get a client for chems/drugs md = get_async_client("chem") await md.getchem("ATBDZSAENDYQDW-UHFFFAOYSA-N", fields="pubchem") # get a client for taxa mt = get_async_client("taxon") await mt.gettaxon(9606)
Contact
Drop us any feedback @biothingsapi
Metadata
Release files for biothings-client 0.5.1
For a detailed explanation of source distributions (sdists) and built distributions (wheels), please see the package formats documentation.
Source distribution (sdist)
| File | Size | Uploaded | Provenance | |
|---|---|---|---|---|
| biothings_client-0.5.1.tar.gz | 61.6 kB | Without provenance | Details |
Built distribution (wheel)
| File | Interpreter | ABI | Platform | Reset |
|---|---|---|---|---|
| biothings_client-0.5.1-py3-none-any.whl | Python 3 | none | any | Details |
Total release size: 113.7 kB
Release files / biothings_client-0.5.1.tar.gz
| Download URL | biothings_client-0.5.1.tar.gz |
|---|---|
| Size | 61.6 kB |
| Tags | Source |
|
SHA-256 checksum How to use checksums |
4ee3a64e278dc0483aae9c85faef88296534a955543d5291a9d528c5164a8506
|
|
BLAKE2b-256 checksum How to use checksums |
ee2173de534c2e1903d58613be872368c8319239d3fa723edd4402f089a81abd
|
| Upload date | |
|
Uploaded using Trusted Publishing? What is trusted publishing? |
No |
| Uploaded via |
twine/6.2.0 CPython/3.9.25
|
Release files / biothings_client-0.5.1-py3-none-any.whl
| Download URL | biothings_client-0.5.1-py3-none-any.whl |
|---|---|
| Size | 52.1 kB |
| Tags | Python 3 |
|
SHA-256 checksum How to use checksums |
8ca9e23887016eabda10054c3fcd1a2482271afac2e58e8399c5a6f841f1735d
|
|
BLAKE2b-256 checksum How to use checksums |
38dff8fe522363990cc3b588d4dafd7601545ca5c3a7b452afc1a79f7802ba2f
|
| Upload date | |
|
Uploaded using Trusted Publishing? What is trusted publishing? |
No |
| Uploaded via |
twine/6.2.0 CPython/3.9.25
|
Security for biothings-client 0.5.1
Provenance
Provenance describes where a file came from. On PyPI, provenance is shared via attestations, which provide a verifiable record of the build or publishing details. View details, limitations and caveats.
No provenance found
None of the files in this release were uploaded with provenance metadata.
A note on package security
PyPI is a repository for distributing packages, not a service for auditing them. While third-party security researchers and our staff do their best to detect and remove malicious packages, PyPI cannot guarantee the quality, security or suitability of any given package.
To learn more about protecting yourself from malicious actors, visit our package security documentation.