Obter sequências de proteínas acessando Uniprot (com Python)

Sep 21 2020

Tenho uma lista de ids de proteínas que estou tentando acessar as sequências de proteínas do Uniprot com python. Me deparei com este post: Sequência de proteína de python id de proteína uniprot, mas dá uma lista de elementos e não a sequência real:

Código

import requests as r
from Bio import SeqIO
from io import StringIO

cID='P04637'

baseUrl="http://www.uniprot.org/uniprot/"
currentUrl=baseUrl+cID+".fasta"
response = r.post(currentUrl)
cData=''.join(response.text)

Seq=StringIO(cData)
pSeq=list(SeqIO.parse(Seq,'fasta'))

que dá saída:

resultado

[SeqRecord(seq=Seq('MQAALIGLNFPLQRRFLSGVLTTTSSAKRCYSGDTGKPYDCTSAEHKKELEECY...SSS', SingleLetterAlphabet()), id='sp|O45228|PROD_CAEEL', name='sp|O45228|PROD_CAEEL', description='sp|O45228|PROD_CAEEL Proline dehydrogenase 1, mitochondrial OS=Caenorhabditis elegans OX=6239 GN=prdh-1 PE=2 SV=2', dbxrefs=[])]

Eu só estava curioso para saber como posso realmente obter a sequência em si.

Respostas

3 Pallie Sep 21 2020 at 20:06

[record.seq for record in pSeq]

editar: você vai querer str(pSeq[0].seq)