comparison uniprotkb.py @ 8:3f6354b7eb94 draft

planemo upload for repository https://github.com/galaxyproteomics/tools-galaxyp/tree/master/tools/dbbuilder commit 16ba4570b04301b774ee0420694f379cc640744b
author galaxyp
date Tue, 27 Sep 2022 13:21:28 +0000
parents
children
comparison
equal deleted inserted replaced
7:8e263cd38da1 8:3f6354b7eb94
1 #!/usr/bin/env python
2
3 import argparse
4 import sys
5
6 import requests
7
8 uniprotkb_url = 'https://rest.uniprot.org/uniprotkb/stream?compressed=true&format=fasta&query='
9
10
11 def __main__():
12 parser = argparse.ArgumentParser(
13 description='Retrieve Uniprot data using streaming')
14 parser.add_argument('-u', '--url', help="Uniprot rest api URL")
15 parser.add_argument('-q', '--query', help="UniprotKB Query")
16 parser.add_argument('-o', '--output', type=argparse.FileType('wb'), default=sys.stdout, help='data')
17 parser.add_argument('-d', '--debug', action='store_true', help='Debug')
18 args = parser.parse_args()
19 if args.url:
20 url = args.url
21 else:
22 url = uniprotkb_url + args.query
23 with requests.get(url, stream=True) as request:
24 request.raise_for_status()
25 for chunk in request.iter_content(chunk_size=2**20):
26 args.output.write(chunk)
27
28
29 if __name__ == "__main__":
30 __main__()