2. Paquetage Inchi
Le paquetage doit strictement provenir de l’InChI trust [ https://www.inchi-trust.org/oer/ ]. L’intérêt de Inchi est que le format est plus précis que SMILES, le format existe sous deux types de chaines de caractères : inchi (plain) et inchikey (clé). La clé inchi est produite à partir de inchi (plain) par un algorithme de chiffrement (SHA-1 il me semble) et possède la même longueur quelque soit la petite molécule organique, ce qui peut être intéressant pour des bases de données ou des collections moléculaires. Le point négatif est qu’elle ne se lit pas à l’œil (chiffré) comme SMILES.
| Paquetage | commandes |
| inchi (1.05) | mamba install inchi |
| chemspipy | mamba install chemspipy |
Notes d’installation
Il existe un répertoire c:\Python3\envs\prod\library\include\inchi mais le binaire (fichier inchi-1.exe) de inchi est dans c:\Python3\envs\prod\library\bin.
Test PubChem
Dans ces condtions inchi est opérationnel, dans C:\Dev\tests-buildez\test_inchi il y a quelques programmes de test, par exemple pubchem.py qui est un resolver vers PubChem, faisons un essai avec le triclosan :
(prod) C:\Dev\tests-buildez\test_inchi>python pubchem.pyEnter a chemical name: triclosan________________________________________Select the value below to retrieve________________________________________ INCHI[0] INCHIKEY[1] MOLECULAR FORMULA[2] SMILES[3] MOLECULAR WEIGHT[4]________________________________________Enter a number choice? 0InChI=1S/C12H7Cl3O2/c13-7-1-3-11(9(15)5-7)17-12-4-2-8(14)6-10(12)16/h1-6,16H...Enter a number choice? 1XEFQLINVKFYRCS-UHFFFAOYSA-N...Enter a number choice? 2C12H7Cl3O2...Enter a number choice? 3C1=CC(=C(C=C1Cl)O)OC2=C(C=C(C=C2)Cl)Cl...Enter a number choice? 4289.5 |
Test Chemspider
Il y aussi chemspider.py qui est un resolver vers ChemSpider (le paquetage ChemSpiPy doit être installé).
Il faut également un Token pour utiliser l’API de ChemSpider. Pour l’obtenir il faut aller sur [ https://developer.rsc.org/ ] (Royal Chemical Society) et suivre les étapes, pour sélectionner l’API Compounds V1 (trial) pour 1000 requêtes (gratuites) par mois.
Login or Create an Account / Create an API key / Learn about our SmartDocs / Walkthrough an example API workflow / See how to incorporate APIs in your applications.
Dans ces conditions, le test ChemSpider doit fonctionner :
(prod) C:\Dev\tests-buildez\test_inchi>python chemspider.pyInsert your API Token Here: xxxxxxxxxxxxxxxxxxxxxxxxxxxxxxinsert your smiles string here: C1=CC(=C(C=C1Cl)O)OC2=C(C=C(C=C2)Cl)ClYour InChI is:------------------------------InChI=1/C12H7Cl3O2/c13-7-1-3-11(9(15)5-7)17-12-4-2-8(14)6-10(12)16/h1-6,16H |
Test Wikipedia
Un exemple de code qui permet d’aller chercher les informations sur une molécule connue dans Wikipedia quand elles existent. Le code wikipedia.py est un resolver vers Wikipedia, le paquetage beautifulsoup (bs4) doit être installé.
(prod) C:\Dev\tests-buildez\test_inchi>python wikipedia.pyPut in the name of the chemical you want the InChI for: triclosanWikipedia says the InChI is:InChI=1S/C12H7Cl3O2/c13-7-1-3-11(9(15)5-7)17-12-4-2-8(14)6-10(12)16/h1-6,16H |
En principe les paquetages additionnels pour faire ces tests sont déjà installés dans l’environnement (base) et clonés (et updatés) dans l’environnement (prod).
Liens et lectures
- Pubchem [ https://pubchem.ncbi.nlm.nih.gov/ ].
- InChI Python tutorials [ https://www.inchi-trust.org/?s=python ].
- Triclosan [ https://fr.wikipedia.org/wiki/Triclosan ].