Answers

Please don't look at these unless you are really struggling!

#!/usr/bin/env python3

def CleanSequence(seq):
    seq = seq.replace('\n', '')
    seq = seq.replace(' ', '')
    return(seq)

def PredictSS(seq):
    seq = CleanSequence(seq)
    retval = ''
    for i in range(0, len(seq)):
        retval += '?'
    return(retval)

""" Main program """

seq = """KVFGRCELAAAMKRHGLDNYRGYSLGNWVCAAKFESNFNTQATNRNTDGSTDY
GILQINSRWWCNDGRTPGSRNLCNIPCSALLSSDITASVNCAKKIVSDGNGMNAWVAWRNR
CKGTDVQAWIRGCRL"""

ss = PredictSS(seq)
if(ss != ""):
    seq = CleanSequence(seq)
    print (seq)
    print (ss)


#!/usr/bin/env python3

from urllib import request
import sys

def CleanSequence(seq):
    seq = seq.replace('\n', '')
    seq = seq.replace(' ', '')
    return(seq)

def ParseSS(result):
   return(result)


def PredictSS(seq):
    seq = CleanSequence(seq)
    url    = "http://www.bioinf.org.uk/teaching/"\
             "bbk/biocomp2/rpc/"\
             "nnpredict/nnpredict.cgi"
    params = "option=none&name=&text=" + seq
    fullurl= url + "?" + params

    result = request.urlopen(fullurl).read()
    result = str(result, encoding='utf-8')
    
    if(result != ''):
        ss = ParseSS(result)
        return(ss)
    else:
        sys.stderr.write("Nothing was returned\n")

    return("")



""" Main program """

seq = """KVFGRCELAAAMKRHGLDNYRGYSLGNWVCAAKFESNFNTQATNRNTDGSTDY
GILQINSRWWCNDGRTPGSRNLCNIPCSALLSSDITASVNCAKKIVSDGNGMNAWVAWRNR
CKGTDVQAWIRGCRL"""

ss = PredictSS(seq)
if(ss != ""):
    seq = CleanSequence(seq)
    print (seq)
    print (ss)


#!/usr/bin/env python3

from urllib import request
import sys
import re

def CleanSequence(seq):
    seq = seq.replace('\n', '')
    seq = seq.replace(' ', '')
    return(seq)

def ParseSS(result):
   result = result.replace('\n','')    # remove returns

   pattern = re.compile('.*<tt>(.*?)</tt>.*')
   match   = pattern.match(result)
   result  = match.group(1) # Returns the () match

   return(result)

def PredictSS(seq):
    seq = CleanSequence(seq)
    url    = "http://www.bioinf.org.uk/teaching/"\
             "bbk/biocomp2/rpc/"\
             "nnpredict/nnpredict.cgi"
    params = "option=none&name=&text=" + seq
    fullurl= url + "?" + params

    result = request.urlopen(fullurl).read()
    result = str(result, encoding='utf-8')
    
    if(result != ''):
        ss = ParseSS(result)
        return(ss)
    else:
        sys.stderr.write("Nothing was returned\n")

    return("")



""" Main program """

seq = """KVFGRCELAAAMKRHGLDNYRGYSLGNWVCAAKFESNFNTQATNRNTDGSTDY
GILQINSRWWCNDGRTPGSRNLCNIPCSALLSSDITASVNCAKKIVSDGNGMNAWVAWRNR
CKGTDVQAWIRGCRL"""

ss = PredictSS(seq)
if(ss != ""):
    seq = CleanSequence(seq)
    print (seq)
    print (ss)


#!/usr/bin/env python3

from urllib import request
import sys
import re

def ReadPDBSWS(pdbcode, resnum):
    url = 'http://www.bioinf.org.uk/servers/pdbsws/query.cgi?plain=1&qtype=pdb'
    url += '&id=' + pdbcode
    url += '&res=' + str(resnum)

    result = request.urlopen(url).read()
    result = str(result, encoding='utf-8')
    result = result.replace('\n', '#')

    pattern  = re.compile('.*AC:\s+(.*?)#')
    match    = pattern.match(result)
    ac       = match.group(1)

    pattern  = re.compile('.*UPCOUNT:\s+(.*?)#')
    match    = pattern.match(result)
    upresnum = int(match.group(1))

    return(ac, upresnum)


""" Main program """

pdbcode = '1bwi'
resnum  = 35

(ac, upresnum) = ReadPDBSWS(pdbcode, resnum)

print ("Accession:      " + ac)
print ("UniProt Resnum: %d" % upresnum)