Python client for enviPath - the environmental contaminant biotransformation pathway resource.
The client allows you to include enviPath directly into you Python code. This is done by using the REST API of enviPath, all calls to Python functions are translated to remote calls to our enviPath. Please see below for documentation.
pip install --upgrade enviPath-python
from pprint import pprint
from enviPath_python import enviPath
eP = enviPath('https://envipath.org')
bbd = eP.get_package('https://envipath.org/package/32de3cf4-e3e6-4168-956e-32fa5ddb0ce1')
bbd_pws = bbd.get_pathways()
pprint(bbd_pws[0].get_description())
The enviPath-python documentation can be found here.
If you are new to enviPath our wiki might also contain some value information.
from enviPath_python import enviPath
eP = enviPath('https://envipath.org')
# get package(s) that should be searched
bbd = eP.get_package('https://envipath.org/package/32de3cf4-e3e6-4168-956e-32fa5ddb0ce1')
soil = eP.get_package('https://envipath.org/package/5882df9c-dae1-4d80-a40e-db4724271456')
# returns a dictionary with properly initialized objects
res = eP.search('c1ccccc1', [bbd, soil])
print(res)
# or use a package to search it
res = bbd.search('c1ccccc1')
print(res)
from pprint import pprint
from enviPath_python import enviPath
eP = enviPath('https://envipath.org')
# get the EAWAG BBD package
bbd = eP.get_package('https://envipath.org/package/32de3cf4-e3e6-4168-956e-32fa5ddb0ce1')
# access collections (e.g. compounds)
# other collections such as reactions, rules, pathways, etc work the same way
compounds = bbd.get_compounds()
for c in compounds[:10]:
print(c.get_id(), c.get_name(), c.get_smiles())
import getpass
from enviPath_python import enviPath
eP = enviPath('https://envipath.org')
# get username + password
username = input("Enter username")
password = getpass.getpass(prompt="Password for {}".format(username))
eP.login(username, password)
print(eP.who_am_i())
for p in eP.get_packages()[:10]:
print(p)
from enviPath_python import enviPath
from enviPath_python.objects import Pathway
from time import sleep
eP = enviPath('https://envipath.org')
# obtain the currently logged in user
me = eP.who_am_i()
# get the package the pathway should be stored in
package = me.get_default_package()
# will trigger the pathway prediction
pw = Pathway.create(package, smiles='CC1(C)C2CCC1(C)C(=O)C2')
# wait until the prediction finished
while pw.is_running():
print("Sleeping for three secs...")
sleep(3)
# check result
if pw.has_failed():
exit(1)
else:
for node in pw.get_nodes():
print(node.get_smiles())