#!/usr/bin/env python# -*- coding: utf-8 -*-## This file is part of the `pypath` python module## Copyright 2014-2023# EMBL, EMBL-EBI, Uniklinik RWTH Aachen, Heidelberg University## Authors: see the file `README.rst`# Contact: Dénes Türei (turei.denes@gmail.com)## Distributed under the GPLv3 License.# See accompanying file LICENSE.txt or copy at# https://www.gnu.org/licenses/gpl-3.0.html## Website: https://pypath.omnipathdb.org/#fromfuture.utilsimportiteritemsimportreimportcollectionsimportpypath.inputs.uniprotasuniprot_inputimportpypath.share.curlascurlimportpypath.resources.urlsasurlsimportpypath.share.commonascommonimportpypath_common._constantsas_constimportpypath.utils.taxonomyastaxonomy
[docs]defget_mirbase_aliases(organism=9606):""" Downloads and processes mapping tables from miRBase. """iftype(organism)in_const.CHAR_TYPES:mborganism=organismeliforganismnotintaxonomy.mirbase_taxids:raiseValueError('Organism not known: %u. Try to pass miRBase ''taxon prefix as string, e.g. `hsa`.'%organism)else:mborganism=taxonomy.mirbase_taxids[organism]mat={}mir={}url=urls.urls['mirbase']['aliases']c=curl.Curl(url,silent=False,large=True)forlinc.result:l=l.strip().strip(';').split('\t')ifl[1][:3]!=mborganism:continued=matifl[0][:5]=='MIMAT'elsemirifl[0]notind:d[l[0]]=set([])forminl[1].split(';'):d[l[0]].add(m)returnmat,mir