#!/usr/bin/env python

import time  
import sys
from SOAPpy import WSDL

blast_wsdUrl='http://www.ebi.ac.uk/Tools/webservices/wsdl/WSWUBlast.wsdl'
server = WSDL.Proxy(blast_wsdUrl)
server.soapproxy.config.dumpSOAPOut = 1
server.soapproxy.config.dumpSOAPIn = 1

seq = """>UniProt/TrEMBL|Q8E5Q5|Q8E5Q5_STRA3 Hypothetical protein gbs0925
MKLSKRYRFWQKVIKALGVLALIATLVLVVYLYKLGILNDSNELKDLVHKYEFWGPMIFI
VAQIVQIVFPVIPGGVTTVAGFLIFGPTLGFIYNYIGIIIGSVILFWLVKFYGRKFVLLF
MDQKTFDKYESKLETSGYEKFFIFCMASPISPADIMVMITGLSNMSIKRFVTIIMITKPI
SIIGYSYLWIYGGDILKNFLN"""
blast_params = {'program':'blastp',
               'database':'uniref90',
               'email':'your@email.com',
               'async':1}
blast_data = [{'type':'sequence',
              'content':seq}]
jobid = server.runWUBlast(params=blast_params,content=blast_data)
print jobid
while server.checkStatus(jobid) != "DONE" : time.sleep(10) 
    
    
sys.stdout.flush()
result = server.poll(jobid,'tooloutput')
print result
