def RecupererPattern(ident):
    # la récupération des séquences à partir de la Base des données SwissProt
    handle = ExPASy.get_prosite_raw(ident)
    record = Prosite.read(handle)
    if record.type == 'PATTERN':
        return record.pattern
    elif record.type == 'MATRIX':
        print("L'identifiant que vous avez entré correspont à un profile !")
예제 #2
0
 def __init__(self, s=None, ps=None):
     if isinstance(s, basestring):
         self.sequence = Seq(s)
     else:
         self.sequence = s
     self.prosite = ExPASy.get_prosite_raw(ps)
     self.record = Prosite.read(self.prosite)
     self.pat = pa.compile(self.record.pattern)
     self.regexp = re.compile(pa.prosite_to_re(self.record.pattern))
def RecupererPattern(ident):

    handle = ExPASy.get_prosite_raw(ident)
    record = Prosite.read(handle)
    if record.type == 'PATTERN':
        print("La forme régulière est: ", record.pattern)
        print("La traduction en Python est: ",
              traduireSequence(record.pattern))
    elif record.type == 'MATRIX':
        print("L'identifiant que vous avez entré correspont à un profile !")
예제 #4
0
def get_documentation(accession):
    """
    get_documentation  function gets as arg :
        accesion (signature_ac example "PS00001" )
    returns 
        html file containing full documentaion 
    """

    handle_1 = ExPASy.get_prosite_raw(accession)
    records = Prosite.read(handle_1)
    handle_2 = ExPASy.get_prodoc_entry(records.pdoc)
    #record = Prodoc.read(handle_2)"
    html = handle_2.read()
    with open("my_prodoc_record.html", "w") as out_handle:
        out_handle.write(html)
예제 #5
0
 def Prosite_Domain(self):
     from Bio import ExPASy
     from Bio.ExPASy import Prosite, ScanProsite
     try:
         handle = ScanProsite.scan(seq=self.__seq_input)
         result = ScanProsite.read(handle)
         if len(result) != 0:
             for res in range(len(result)):
                 prosite_acession = result[res]['signature_ac']
                 r = ExPASy.get_prosite_raw(prosite_acession)
                 html = Prosite.read(r)
                 r.close()
                 print('Foi encontrado um dominio %s.' % (html.name))
         else:
             print('Não foram encontradas correspondências.')
     except:
         print('A sequência fornecida não é uma sequência proteica.')
예제 #6
0
 def test_prodoc_raw(self):
     handle = ExPASy.get_prosite_raw("PDOC00001")
     record = Prodoc.read(handle)
     handle.close()
     self.assertEqual(record.accession, "PDOC00001")
예제 #7
0
 def test_prosite_raw(self):
     handle = ExPASy.get_prosite_raw("PS00001")
     record = Prosite.read(handle)
     handle.close()
     self.assertEqual(record.accession, "PS00001")
     self.assertEqual(record.name, "ASN_GLYCOSYLATION")
예제 #8
0
 def test_prodoc_raw(self):
     handle = ExPASy.get_prosite_raw('PDOC00001')
     record = Prodoc.read(handle)
     handle.close()
     self.assertEqual(record.accession, 'PDOC00001')
예제 #9
0
 def test_prosite_raw(self):
     handle = ExPASy.get_prosite_raw('PS00001')
     record = Prosite.read(handle)
     handle.close()
     self.assertEqual(record.accession, 'PS00001')
     self.assertEqual(record.name, 'ASN_GLYCOSYLATION')
예제 #10
0
 def test_prodoc_raw(self):
     with ExPASy.get_prosite_raw("PDOC00001") as handle:
         record = Prodoc.read(handle)
     self.assertEqual(record.accession, "PDOC00001")
예제 #11
0
 def test_prosite_raw(self):
     with ExPASy.get_prosite_raw("PS00001") as handle:
         record = Prosite.read(handle)
     self.assertEqual(record.accession, "PS00001")
     self.assertEqual(record.name, "ASN_GLYCOSYLATION")
예제 #12
0
    accessions = set()
    motifs = ""

    # Scan Prosite for matching motifs
    handle = ScanProsite.scan(seq=sequence, skip="off")
    result = ScanProsite.read(handle)

    # Obtain all accession motifs
    for hit in result:
        acc = hit.get('signature_ac')
        accessions.add(acc)

        # Get descriptions from accession numbers
    for accession in accessions:
        prof = ExPASy.get_prosite_raw(accession)
        text = prof.read()
        text = text.splitlines()
        desc = text[3]
        desc = str.split(desc, 'DE   ')
        desc = desc[1]
        desc = desc[0:(len(desc) - 1)]

        motifs += desc + ";"

    motifs = motifs[0:(len(motifs) - 1)]
    motifset.append(motifs)

results = {"Name": input.iloc[:, 0], "Prosite": motifset}
output = pd.DataFrame(data=results)
예제 #13
0
from Bio import ExPASy
handle = ExPASy.get_prosite_raw("PS00001")
text = handle.read()
print(text)
# 가장 원시적인 긁는 방법 (Expasy만 있으면 됨)
"""from Bio import Prosite
handle = ExPASy.get_prosite_raw("PS51036")
record = Prosite.read(handle)
print(record)"""
# ImportError: cannot import name 'Prosite' from 'Bio' (/home/koreanraichu/PycharmProjects/pythonProject/venv/lib/python3.8/site-packages/Bio/__init__.py)가 나를 반기는디?

from Bio.ExPASy import Prodoc
handle = ExPASy.get_prosite_raw("PDOC00001")
record = Prodoc.read(handle)
print(record)

handle = ExPASy.get_prosite_entry("PS51036")
html = handle.read()
with open("myprositerecord.html", "w") as out_handle:
    out_handle.write(html)
# HTML format으로 다운로드 받을 수 있다.

handle = ExPASy.get_prodoc_entry("PDOC51036")
html = handle.read()
with open("myprositerecord2.html", "w") as out_handle:
    out_handle.write(html)
# 얘는 prodoc 다운로드 하는 코드
from Bio.ExPASy import ScanProsite, Prosite, Prodoc
from Bio import ExPASy

# 在线浏览蛋白质序列
sequence = "MEHKEVVLLLLLFLKSGQGEPLDDYVNTQGASLFSVTKKQLGAGSIEECAAKCEEDEEFTCRAFQYHSKEQQCVIMAENRKSSIIIRMRDVVLFEKKVYLSECKTGNGKNYRGTMSKTKN"
handle = ScanProsite.scan(seq=sequence)
result = ScanProsite.read(handle)
print(result)

# 获取Prosite记录
handle = ExPASy.get_prosite_raw('PS00001')
record = Prosite.read(handle)
# record = Prodoc.read(handle)
print(record)