Mercurial > repos > iuc > ncbi_eutils_epost
annotate esummary.py @ 3:ae3a5d753d42 draft
"planemo upload for repository https://github.com/galaxyproject/tools-iuc/tree/master/tools/ncbi_entrez_eutils commit dae34e5e182b4cceb808d7353080f14aa9a78ca9"
| author | iuc | 
|---|---|
| date | Wed, 23 Sep 2020 09:51:06 +0000 | 
| parents | 196b8dd07896 | 
| children | 
| rev | line source | 
|---|---|
| 0 
18e6b25259ff
planemo upload for repository https://github.com/galaxyproject/tools-iuc/tree/master/tools/ncbi_entrez_eutils commit 15bcc5104c577b4b9c761f2854fc686c07ffa9db
 iuc parents: diff
changeset | 1 #!/usr/bin/env python | 
| 1 
196b8dd07896
planemo upload for repository https://github.com/galaxyproject/tools-iuc/tree/master/tools/ncbi_entrez_eutils commit a4b0969b33a68a0ea9ba12291f6694aec24f13ed
 iuc parents: 
0diff
changeset | 2 | 
| 0 
18e6b25259ff
planemo upload for repository https://github.com/galaxyproject/tools-iuc/tree/master/tools/ncbi_entrez_eutils commit 15bcc5104c577b4b9c761f2854fc686c07ffa9db
 iuc parents: diff
changeset | 3 import argparse | 
| 3 
ae3a5d753d42
"planemo upload for repository https://github.com/galaxyproject/tools-iuc/tree/master/tools/ncbi_entrez_eutils commit dae34e5e182b4cceb808d7353080f14aa9a78ca9"
 iuc parents: 
1diff
changeset | 4 import json | 
| 
ae3a5d753d42
"planemo upload for repository https://github.com/galaxyproject/tools-iuc/tree/master/tools/ncbi_entrez_eutils commit dae34e5e182b4cceb808d7353080f14aa9a78ca9"
 iuc parents: 
1diff
changeset | 5 import logging | 
| 
ae3a5d753d42
"planemo upload for repository https://github.com/galaxyproject/tools-iuc/tree/master/tools/ncbi_entrez_eutils commit dae34e5e182b4cceb808d7353080f14aa9a78ca9"
 iuc parents: 
1diff
changeset | 6 import os | 
| 1 
196b8dd07896
planemo upload for repository https://github.com/galaxyproject/tools-iuc/tree/master/tools/ncbi_entrez_eutils commit a4b0969b33a68a0ea9ba12291f6694aec24f13ed
 iuc parents: 
0diff
changeset | 7 | 
| 0 
18e6b25259ff
planemo upload for repository https://github.com/galaxyproject/tools-iuc/tree/master/tools/ncbi_entrez_eutils commit 15bcc5104c577b4b9c761f2854fc686c07ffa9db
 iuc parents: diff
changeset | 8 import eutils | 
| 
18e6b25259ff
planemo upload for repository https://github.com/galaxyproject/tools-iuc/tree/master/tools/ncbi_entrez_eutils commit 15bcc5104c577b4b9c761f2854fc686c07ffa9db
 iuc parents: diff
changeset | 9 | 
| 
18e6b25259ff
planemo upload for repository https://github.com/galaxyproject/tools-iuc/tree/master/tools/ncbi_entrez_eutils commit 15bcc5104c577b4b9c761f2854fc686c07ffa9db
 iuc parents: diff
changeset | 10 | 
| 3 
ae3a5d753d42
"planemo upload for repository https://github.com/galaxyproject/tools-iuc/tree/master/tools/ncbi_entrez_eutils commit dae34e5e182b4cceb808d7353080f14aa9a78ca9"
 iuc parents: 
1diff
changeset | 11 logging.basicConfig(level=logging.INFO) | 
| 
ae3a5d753d42
"planemo upload for repository https://github.com/galaxyproject/tools-iuc/tree/master/tools/ncbi_entrez_eutils commit dae34e5e182b4cceb808d7353080f14aa9a78ca9"
 iuc parents: 
1diff
changeset | 12 | 
| 
ae3a5d753d42
"planemo upload for repository https://github.com/galaxyproject/tools-iuc/tree/master/tools/ncbi_entrez_eutils commit dae34e5e182b4cceb808d7353080f14aa9a78ca9"
 iuc parents: 
1diff
changeset | 13 | 
| 0 
18e6b25259ff
planemo upload for repository https://github.com/galaxyproject/tools-iuc/tree/master/tools/ncbi_entrez_eutils commit 15bcc5104c577b4b9c761f2854fc686c07ffa9db
 iuc parents: diff
changeset | 14 if __name__ == '__main__': | 
| 
18e6b25259ff
planemo upload for repository https://github.com/galaxyproject/tools-iuc/tree/master/tools/ncbi_entrez_eutils commit 15bcc5104c577b4b9c761f2854fc686c07ffa9db
 iuc parents: diff
changeset | 15 parser = argparse.ArgumentParser(description='ESummary', epilog='') | 
| 
18e6b25259ff
planemo upload for repository https://github.com/galaxyproject/tools-iuc/tree/master/tools/ncbi_entrez_eutils commit 15bcc5104c577b4b9c761f2854fc686c07ffa9db
 iuc parents: diff
changeset | 16 parser.add_argument('db', help='Database to use') | 
| 3 
ae3a5d753d42
"planemo upload for repository https://github.com/galaxyproject/tools-iuc/tree/master/tools/ncbi_entrez_eutils commit dae34e5e182b4cceb808d7353080f14aa9a78ca9"
 iuc parents: 
1diff
changeset | 17 parser.add_argument('--user_email', help="User email") | 
| 
ae3a5d753d42
"planemo upload for repository https://github.com/galaxyproject/tools-iuc/tree/master/tools/ncbi_entrez_eutils commit dae34e5e182b4cceb808d7353080f14aa9a78ca9"
 iuc parents: 
1diff
changeset | 18 parser.add_argument('--admin_email', help="Admin email") | 
| 
ae3a5d753d42
"planemo upload for repository https://github.com/galaxyproject/tools-iuc/tree/master/tools/ncbi_entrez_eutils commit dae34e5e182b4cceb808d7353080f14aa9a78ca9"
 iuc parents: 
1diff
changeset | 19 | 
| 
ae3a5d753d42
"planemo upload for repository https://github.com/galaxyproject/tools-iuc/tree/master/tools/ncbi_entrez_eutils commit dae34e5e182b4cceb808d7353080f14aa9a78ca9"
 iuc parents: 
1diff
changeset | 20 parser.add_argument('--version', action='version', version=eutils.Client.getVersion(), help='Version (reports Biopython version)') | 
| 
ae3a5d753d42
"planemo upload for repository https://github.com/galaxyproject/tools-iuc/tree/master/tools/ncbi_entrez_eutils commit dae34e5e182b4cceb808d7353080f14aa9a78ca9"
 iuc parents: 
1diff
changeset | 21 | 
| 
ae3a5d753d42
"planemo upload for repository https://github.com/galaxyproject/tools-iuc/tree/master/tools/ncbi_entrez_eutils commit dae34e5e182b4cceb808d7353080f14aa9a78ca9"
 iuc parents: 
1diff
changeset | 22 # ID source | 
| 
ae3a5d753d42
"planemo upload for repository https://github.com/galaxyproject/tools-iuc/tree/master/tools/ncbi_entrez_eutils commit dae34e5e182b4cceb808d7353080f14aa9a78ca9"
 iuc parents: 
1diff
changeset | 23 parser.add_argument('--id_xml', help='list of ids in an xml file as returned by esearch or elink') | 
| 
ae3a5d753d42
"planemo upload for repository https://github.com/galaxyproject/tools-iuc/tree/master/tools/ncbi_entrez_eutils commit dae34e5e182b4cceb808d7353080f14aa9a78ca9"
 iuc parents: 
1diff
changeset | 24 parser.add_argument('--id_json', help='list of ids in a json file as returned by esearch or elink') | 
| 0 
18e6b25259ff
planemo upload for repository https://github.com/galaxyproject/tools-iuc/tree/master/tools/ncbi_entrez_eutils commit 15bcc5104c577b4b9c761f2854fc686c07ffa9db
 iuc parents: diff
changeset | 25 parser.add_argument('--id_list', help='list of ids') | 
| 
18e6b25259ff
planemo upload for repository https://github.com/galaxyproject/tools-iuc/tree/master/tools/ncbi_entrez_eutils commit 15bcc5104c577b4b9c761f2854fc686c07ffa9db
 iuc parents: diff
changeset | 26 parser.add_argument('--id', help='Comma separated individual IDs') | 
| 3 
ae3a5d753d42
"planemo upload for repository https://github.com/galaxyproject/tools-iuc/tree/master/tools/ncbi_entrez_eutils commit dae34e5e182b4cceb808d7353080f14aa9a78ca9"
 iuc parents: 
1diff
changeset | 27 parser.add_argument('--history_file', help='Fetch results from previous query') | 
| 
ae3a5d753d42
"planemo upload for repository https://github.com/galaxyproject/tools-iuc/tree/master/tools/ncbi_entrez_eutils commit dae34e5e182b4cceb808d7353080f14aa9a78ca9"
 iuc parents: 
1diff
changeset | 28 parser.add_argument('--history_xml', help='Fetch results from previous query') | 
| 
ae3a5d753d42
"planemo upload for repository https://github.com/galaxyproject/tools-iuc/tree/master/tools/ncbi_entrez_eutils commit dae34e5e182b4cceb808d7353080f14aa9a78ca9"
 iuc parents: 
1diff
changeset | 29 | 
| 
ae3a5d753d42
"planemo upload for repository https://github.com/galaxyproject/tools-iuc/tree/master/tools/ncbi_entrez_eutils commit dae34e5e182b4cceb808d7353080f14aa9a78ca9"
 iuc parents: 
1diff
changeset | 30 # Output | 
| 
ae3a5d753d42
"planemo upload for repository https://github.com/galaxyproject/tools-iuc/tree/master/tools/ncbi_entrez_eutils commit dae34e5e182b4cceb808d7353080f14aa9a78ca9"
 iuc parents: 
1diff
changeset | 31 parser.add_argument('--retmode', help='Retmode') | 
| 
ae3a5d753d42
"planemo upload for repository https://github.com/galaxyproject/tools-iuc/tree/master/tools/ncbi_entrez_eutils commit dae34e5e182b4cceb808d7353080f14aa9a78ca9"
 iuc parents: 
1diff
changeset | 32 parser.add_argument('--retstart', type=int, default=0, help='Retstart - Starting rec number (0)') | 
| 
ae3a5d753d42
"planemo upload for repository https://github.com/galaxyproject/tools-iuc/tree/master/tools/ncbi_entrez_eutils commit dae34e5e182b4cceb808d7353080f14aa9a78ca9"
 iuc parents: 
1diff
changeset | 33 parser.add_argument('--retmax', type=int, default=20, help='Retmax - max number of recs returned (20, max 100000') | 
| 
ae3a5d753d42
"planemo upload for repository https://github.com/galaxyproject/tools-iuc/tree/master/tools/ncbi_entrez_eutils commit dae34e5e182b4cceb808d7353080f14aa9a78ca9"
 iuc parents: 
1diff
changeset | 34 | 
| 0 
18e6b25259ff
planemo upload for repository https://github.com/galaxyproject/tools-iuc/tree/master/tools/ncbi_entrez_eutils commit 15bcc5104c577b4b9c761f2854fc686c07ffa9db
 iuc parents: diff
changeset | 35 args = parser.parse_args() | 
| 
18e6b25259ff
planemo upload for repository https://github.com/galaxyproject/tools-iuc/tree/master/tools/ncbi_entrez_eutils commit 15bcc5104c577b4b9c761f2854fc686c07ffa9db
 iuc parents: diff
changeset | 36 | 
| 
18e6b25259ff
planemo upload for repository https://github.com/galaxyproject/tools-iuc/tree/master/tools/ncbi_entrez_eutils commit 15bcc5104c577b4b9c761f2854fc686c07ffa9db
 iuc parents: diff
changeset | 37 c = eutils.Client(history_file=args.history_file, user_email=args.user_email, admin_email=args.admin_email) | 
| 
18e6b25259ff
planemo upload for repository https://github.com/galaxyproject/tools-iuc/tree/master/tools/ncbi_entrez_eutils commit 15bcc5104c577b4b9c761f2854fc686c07ffa9db
 iuc parents: diff
changeset | 38 | 
| 
18e6b25259ff
planemo upload for repository https://github.com/galaxyproject/tools-iuc/tree/master/tools/ncbi_entrez_eutils commit 15bcc5104c577b4b9c761f2854fc686c07ffa9db
 iuc parents: diff
changeset | 39 payload = { | 
| 
18e6b25259ff
planemo upload for repository https://github.com/galaxyproject/tools-iuc/tree/master/tools/ncbi_entrez_eutils commit 15bcc5104c577b4b9c761f2854fc686c07ffa9db
 iuc parents: diff
changeset | 40 'db': args.db, | 
| 
18e6b25259ff
planemo upload for repository https://github.com/galaxyproject/tools-iuc/tree/master/tools/ncbi_entrez_eutils commit 15bcc5104c577b4b9c761f2854fc686c07ffa9db
 iuc parents: diff
changeset | 41 } | 
| 
18e6b25259ff
planemo upload for repository https://github.com/galaxyproject/tools-iuc/tree/master/tools/ncbi_entrez_eutils commit 15bcc5104c577b4b9c761f2854fc686c07ffa9db
 iuc parents: diff
changeset | 42 | 
| 3 
ae3a5d753d42
"planemo upload for repository https://github.com/galaxyproject/tools-iuc/tree/master/tools/ncbi_entrez_eutils commit dae34e5e182b4cceb808d7353080f14aa9a78ca9"
 iuc parents: 
1diff
changeset | 43 for attr in ('retmode', 'retmax', 'retstart'): | 
| 
ae3a5d753d42
"planemo upload for repository https://github.com/galaxyproject/tools-iuc/tree/master/tools/ncbi_entrez_eutils commit dae34e5e182b4cceb808d7353080f14aa9a78ca9"
 iuc parents: 
1diff
changeset | 44 if getattr(args, attr, None) is not None: | 
| 
ae3a5d753d42
"planemo upload for repository https://github.com/galaxyproject/tools-iuc/tree/master/tools/ncbi_entrez_eutils commit dae34e5e182b4cceb808d7353080f14aa9a78ca9"
 iuc parents: 
1diff
changeset | 45 payload[attr] = getattr(args, attr) | 
| 
ae3a5d753d42
"planemo upload for repository https://github.com/galaxyproject/tools-iuc/tree/master/tools/ncbi_entrez_eutils commit dae34e5e182b4cceb808d7353080f14aa9a78ca9"
 iuc parents: 
1diff
changeset | 46 | 
| 
ae3a5d753d42
"planemo upload for repository https://github.com/galaxyproject/tools-iuc/tree/master/tools/ncbi_entrez_eutils commit dae34e5e182b4cceb808d7353080f14aa9a78ca9"
 iuc parents: 
1diff
changeset | 47 results = [] | 
| 
ae3a5d753d42
"planemo upload for repository https://github.com/galaxyproject/tools-iuc/tree/master/tools/ncbi_entrez_eutils commit dae34e5e182b4cceb808d7353080f14aa9a78ca9"
 iuc parents: 
1diff
changeset | 48 qkeys = [] | 
| 
ae3a5d753d42
"planemo upload for repository https://github.com/galaxyproject/tools-iuc/tree/master/tools/ncbi_entrez_eutils commit dae34e5e182b4cceb808d7353080f14aa9a78ca9"
 iuc parents: 
1diff
changeset | 49 if args.history_file is not None or args.history_xml is not None: | 
| 
ae3a5d753d42
"planemo upload for repository https://github.com/galaxyproject/tools-iuc/tree/master/tools/ncbi_entrez_eutils commit dae34e5e182b4cceb808d7353080f14aa9a78ca9"
 iuc parents: 
1diff
changeset | 50 payload['retmode'] = args.retmode | 
| 
ae3a5d753d42
"planemo upload for repository https://github.com/galaxyproject/tools-iuc/tree/master/tools/ncbi_entrez_eutils commit dae34e5e182b4cceb808d7353080f14aa9a78ca9"
 iuc parents: 
1diff
changeset | 51 if args.history_file is not None: | 
| 
ae3a5d753d42
"planemo upload for repository https://github.com/galaxyproject/tools-iuc/tree/master/tools/ncbi_entrez_eutils commit dae34e5e182b4cceb808d7353080f14aa9a78ca9"
 iuc parents: 
1diff
changeset | 52 input_histories = c.get_histories() | 
| 
ae3a5d753d42
"planemo upload for repository https://github.com/galaxyproject/tools-iuc/tree/master/tools/ncbi_entrez_eutils commit dae34e5e182b4cceb808d7353080f14aa9a78ca9"
 iuc parents: 
1diff
changeset | 53 else: | 
| 
ae3a5d753d42
"planemo upload for repository https://github.com/galaxyproject/tools-iuc/tree/master/tools/ncbi_entrez_eutils commit dae34e5e182b4cceb808d7353080f14aa9a78ca9"
 iuc parents: 
1diff
changeset | 54 input_histories = c.extract_histories_from_xml_file(args.history_xml) | 
| 
ae3a5d753d42
"planemo upload for repository https://github.com/galaxyproject/tools-iuc/tree/master/tools/ncbi_entrez_eutils commit dae34e5e182b4cceb808d7353080f14aa9a78ca9"
 iuc parents: 
1diff
changeset | 55 | 
| 
ae3a5d753d42
"planemo upload for repository https://github.com/galaxyproject/tools-iuc/tree/master/tools/ncbi_entrez_eutils commit dae34e5e182b4cceb808d7353080f14aa9a78ca9"
 iuc parents: 
1diff
changeset | 56 for hist in input_histories: | 
| 
ae3a5d753d42
"planemo upload for repository https://github.com/galaxyproject/tools-iuc/tree/master/tools/ncbi_entrez_eutils commit dae34e5e182b4cceb808d7353080f14aa9a78ca9"
 iuc parents: 
1diff
changeset | 57 qkeys += [hist['query_key']] | 
| 
ae3a5d753d42
"planemo upload for repository https://github.com/galaxyproject/tools-iuc/tree/master/tools/ncbi_entrez_eutils commit dae34e5e182b4cceb808d7353080f14aa9a78ca9"
 iuc parents: 
1diff
changeset | 58 tmp_payload = payload | 
| 
ae3a5d753d42
"planemo upload for repository https://github.com/galaxyproject/tools-iuc/tree/master/tools/ncbi_entrez_eutils commit dae34e5e182b4cceb808d7353080f14aa9a78ca9"
 iuc parents: 
1diff
changeset | 59 tmp_payload.update(hist) | 
| 
ae3a5d753d42
"planemo upload for repository https://github.com/galaxyproject/tools-iuc/tree/master/tools/ncbi_entrez_eutils commit dae34e5e182b4cceb808d7353080f14aa9a78ca9"
 iuc parents: 
1diff
changeset | 60 results += [c.summary(**tmp_payload)] | 
| 0 
18e6b25259ff
planemo upload for repository https://github.com/galaxyproject/tools-iuc/tree/master/tools/ncbi_entrez_eutils commit 15bcc5104c577b4b9c761f2854fc686c07ffa9db
 iuc parents: diff
changeset | 61 else: | 
| 3 
ae3a5d753d42
"planemo upload for repository https://github.com/galaxyproject/tools-iuc/tree/master/tools/ncbi_entrez_eutils commit dae34e5e182b4cceb808d7353080f14aa9a78ca9"
 iuc parents: 
1diff
changeset | 62 # There is no uilist retmode | 
| 
ae3a5d753d42
"planemo upload for repository https://github.com/galaxyproject/tools-iuc/tree/master/tools/ncbi_entrez_eutils commit dae34e5e182b4cceb808d7353080f14aa9a78ca9"
 iuc parents: 
1diff
changeset | 63 if args.retmode == "uilist": | 
| 
ae3a5d753d42
"planemo upload for repository https://github.com/galaxyproject/tools-iuc/tree/master/tools/ncbi_entrez_eutils commit dae34e5e182b4cceb808d7353080f14aa9a78ca9"
 iuc parents: 
1diff
changeset | 64 payload['retmode'] = 'xml' | 
| 
ae3a5d753d42
"planemo upload for repository https://github.com/galaxyproject/tools-iuc/tree/master/tools/ncbi_entrez_eutils commit dae34e5e182b4cceb808d7353080f14aa9a78ca9"
 iuc parents: 
1diff
changeset | 65 else: | 
| 
ae3a5d753d42
"planemo upload for repository https://github.com/galaxyproject/tools-iuc/tree/master/tools/ncbi_entrez_eutils commit dae34e5e182b4cceb808d7353080f14aa9a78ca9"
 iuc parents: 
1diff
changeset | 66 payload['retmode'] = args.retmode | 
| 
ae3a5d753d42
"planemo upload for repository https://github.com/galaxyproject/tools-iuc/tree/master/tools/ncbi_entrez_eutils commit dae34e5e182b4cceb808d7353080f14aa9a78ca9"
 iuc parents: 
1diff
changeset | 67 merged_ids = c.parse_ids(args.id_list, args.id, args.history_file, args.id_xml, args.id_json) | 
| 0 
18e6b25259ff
planemo upload for repository https://github.com/galaxyproject/tools-iuc/tree/master/tools/ncbi_entrez_eutils commit 15bcc5104c577b4b9c761f2854fc686c07ffa9db
 iuc parents: diff
changeset | 68 payload['id'] = ','.join(merged_ids) | 
| 3 
ae3a5d753d42
"planemo upload for repository https://github.com/galaxyproject/tools-iuc/tree/master/tools/ncbi_entrez_eutils commit dae34e5e182b4cceb808d7353080f14aa9a78ca9"
 iuc parents: 
1diff
changeset | 69 qkeys += [1] | 
| 
ae3a5d753d42
"planemo upload for repository https://github.com/galaxyproject/tools-iuc/tree/master/tools/ncbi_entrez_eutils commit dae34e5e182b4cceb808d7353080f14aa9a78ca9"
 iuc parents: 
1diff
changeset | 70 results += [c.summary(**payload)] | 
| 
ae3a5d753d42
"planemo upload for repository https://github.com/galaxyproject/tools-iuc/tree/master/tools/ncbi_entrez_eutils commit dae34e5e182b4cceb808d7353080f14aa9a78ca9"
 iuc parents: 
1diff
changeset | 71 | 
| 
ae3a5d753d42
"planemo upload for repository https://github.com/galaxyproject/tools-iuc/tree/master/tools/ncbi_entrez_eutils commit dae34e5e182b4cceb808d7353080f14aa9a78ca9"
 iuc parents: 
1diff
changeset | 72 # There could be multiple sets of results if a history was supplied | 
| 
ae3a5d753d42
"planemo upload for repository https://github.com/galaxyproject/tools-iuc/tree/master/tools/ncbi_entrez_eutils commit dae34e5e182b4cceb808d7353080f14aa9a78ca9"
 iuc parents: 
1diff
changeset | 73 if args.history_file is not None or args.history_xml is not None: | 
| 
ae3a5d753d42
"planemo upload for repository https://github.com/galaxyproject/tools-iuc/tree/master/tools/ncbi_entrez_eutils commit dae34e5e182b4cceb808d7353080f14aa9a78ca9"
 iuc parents: 
1diff
changeset | 74 # Multiple result sets can be returned | 
| 
ae3a5d753d42
"planemo upload for repository https://github.com/galaxyproject/tools-iuc/tree/master/tools/ncbi_entrez_eutils commit dae34e5e182b4cceb808d7353080f14aa9a78ca9"
 iuc parents: 
1diff
changeset | 75 # Create a directory for the output files | 
| 
ae3a5d753d42
"planemo upload for repository https://github.com/galaxyproject/tools-iuc/tree/master/tools/ncbi_entrez_eutils commit dae34e5e182b4cceb808d7353080f14aa9a78ca9"
 iuc parents: 
1diff
changeset | 76 current_directory = os.getcwd() | 
| 
ae3a5d753d42
"planemo upload for repository https://github.com/galaxyproject/tools-iuc/tree/master/tools/ncbi_entrez_eutils commit dae34e5e182b4cceb808d7353080f14aa9a78ca9"
 iuc parents: 
1diff
changeset | 77 final_directory = os.path.join(current_directory, r'downloads') | 
| 
ae3a5d753d42
"planemo upload for repository https://github.com/galaxyproject/tools-iuc/tree/master/tools/ncbi_entrez_eutils commit dae34e5e182b4cceb808d7353080f14aa9a78ca9"
 iuc parents: 
1diff
changeset | 78 if not os.path.exists(final_directory): | 
| 
ae3a5d753d42
"planemo upload for repository https://github.com/galaxyproject/tools-iuc/tree/master/tools/ncbi_entrez_eutils commit dae34e5e182b4cceb808d7353080f14aa9a78ca9"
 iuc parents: 
1diff
changeset | 79 os.makedirs(final_directory) | 
| 0 
18e6b25259ff
planemo upload for repository https://github.com/galaxyproject/tools-iuc/tree/master/tools/ncbi_entrez_eutils commit 15bcc5104c577b4b9c761f2854fc686c07ffa9db
 iuc parents: diff
changeset | 80 | 
| 3 
ae3a5d753d42
"planemo upload for repository https://github.com/galaxyproject/tools-iuc/tree/master/tools/ncbi_entrez_eutils commit dae34e5e182b4cceb808d7353080f14aa9a78ca9"
 iuc parents: 
1diff
changeset | 81 logging.info("Writing files:") | 
| 
ae3a5d753d42
"planemo upload for repository https://github.com/galaxyproject/tools-iuc/tree/master/tools/ncbi_entrez_eutils commit dae34e5e182b4cceb808d7353080f14aa9a78ca9"
 iuc parents: 
1diff
changeset | 82 count = 0 | 
| 
ae3a5d753d42
"planemo upload for repository https://github.com/galaxyproject/tools-iuc/tree/master/tools/ncbi_entrez_eutils commit dae34e5e182b4cceb808d7353080f14aa9a78ca9"
 iuc parents: 
1diff
changeset | 83 if args.retmode == 'json': | 
| 
ae3a5d753d42
"planemo upload for repository https://github.com/galaxyproject/tools-iuc/tree/master/tools/ncbi_entrez_eutils commit dae34e5e182b4cceb808d7353080f14aa9a78ca9"
 iuc parents: 
1diff
changeset | 84 for result in results: | 
| 
ae3a5d753d42
"planemo upload for repository https://github.com/galaxyproject/tools-iuc/tree/master/tools/ncbi_entrez_eutils commit dae34e5e182b4cceb808d7353080f14aa9a78ca9"
 iuc parents: 
1diff
changeset | 85 qkey = qkeys[count] | 
| 
ae3a5d753d42
"planemo upload for repository https://github.com/galaxyproject/tools-iuc/tree/master/tools/ncbi_entrez_eutils commit dae34e5e182b4cceb808d7353080f14aa9a78ca9"
 iuc parents: 
1diff
changeset | 86 count += 1 | 
| 
ae3a5d753d42
"planemo upload for repository https://github.com/galaxyproject/tools-iuc/tree/master/tools/ncbi_entrez_eutils commit dae34e5e182b4cceb808d7353080f14aa9a78ca9"
 iuc parents: 
1diff
changeset | 87 file_path = os.path.join('downloads', '%s-querykey%s.json' % (args.db, qkey)) | 
| 
ae3a5d753d42
"planemo upload for repository https://github.com/galaxyproject/tools-iuc/tree/master/tools/ncbi_entrez_eutils commit dae34e5e182b4cceb808d7353080f14aa9a78ca9"
 iuc parents: 
1diff
changeset | 88 logging.info('%s-link%s.json' % (args.db, count)) | 
| 
ae3a5d753d42
"planemo upload for repository https://github.com/galaxyproject/tools-iuc/tree/master/tools/ncbi_entrez_eutils commit dae34e5e182b4cceb808d7353080f14aa9a78ca9"
 iuc parents: 
1diff
changeset | 89 with open(file_path, 'w') as handle: | 
| 
ae3a5d753d42
"planemo upload for repository https://github.com/galaxyproject/tools-iuc/tree/master/tools/ncbi_entrez_eutils commit dae34e5e182b4cceb808d7353080f14aa9a78ca9"
 iuc parents: 
1diff
changeset | 90 json_data = c.jsonstring2jsondata(result) | 
| 
ae3a5d753d42
"planemo upload for repository https://github.com/galaxyproject/tools-iuc/tree/master/tools/ncbi_entrez_eutils commit dae34e5e182b4cceb808d7353080f14aa9a78ca9"
 iuc parents: 
1diff
changeset | 91 handle.write(json.dumps(json_data, indent=4)) | 
| 
ae3a5d753d42
"planemo upload for repository https://github.com/galaxyproject/tools-iuc/tree/master/tools/ncbi_entrez_eutils commit dae34e5e182b4cceb808d7353080f14aa9a78ca9"
 iuc parents: 
1diff
changeset | 92 else: | 
| 
ae3a5d753d42
"planemo upload for repository https://github.com/galaxyproject/tools-iuc/tree/master/tools/ncbi_entrez_eutils commit dae34e5e182b4cceb808d7353080f14aa9a78ca9"
 iuc parents: 
1diff
changeset | 93 for result in results: | 
| 
ae3a5d753d42
"planemo upload for repository https://github.com/galaxyproject/tools-iuc/tree/master/tools/ncbi_entrez_eutils commit dae34e5e182b4cceb808d7353080f14aa9a78ca9"
 iuc parents: 
1diff
changeset | 94 qkey = qkeys[count] | 
| 
ae3a5d753d42
"planemo upload for repository https://github.com/galaxyproject/tools-iuc/tree/master/tools/ncbi_entrez_eutils commit dae34e5e182b4cceb808d7353080f14aa9a78ca9"
 iuc parents: 
1diff
changeset | 95 count += 1 | 
| 
ae3a5d753d42
"planemo upload for repository https://github.com/galaxyproject/tools-iuc/tree/master/tools/ncbi_entrez_eutils commit dae34e5e182b4cceb808d7353080f14aa9a78ca9"
 iuc parents: 
1diff
changeset | 96 file_path = os.path.join('downloads', '%s-querykey%s.xml' % (args.db, qkey)) | 
| 
ae3a5d753d42
"planemo upload for repository https://github.com/galaxyproject/tools-iuc/tree/master/tools/ncbi_entrez_eutils commit dae34e5e182b4cceb808d7353080f14aa9a78ca9"
 iuc parents: 
1diff
changeset | 97 logging.info('%s-link%s.xml' % (args.db, count)) | 
| 
ae3a5d753d42
"planemo upload for repository https://github.com/galaxyproject/tools-iuc/tree/master/tools/ncbi_entrez_eutils commit dae34e5e182b4cceb808d7353080f14aa9a78ca9"
 iuc parents: 
1diff
changeset | 98 with open(file_path, 'w') as handle: | 
| 
ae3a5d753d42
"planemo upload for repository https://github.com/galaxyproject/tools-iuc/tree/master/tools/ncbi_entrez_eutils commit dae34e5e182b4cceb808d7353080f14aa9a78ca9"
 iuc parents: 
1diff
changeset | 99 handle.write(result) | 
| 
ae3a5d753d42
"planemo upload for repository https://github.com/galaxyproject/tools-iuc/tree/master/tools/ncbi_entrez_eutils commit dae34e5e182b4cceb808d7353080f14aa9a78ca9"
 iuc parents: 
1diff
changeset | 100 else: | 
| 
ae3a5d753d42
"planemo upload for repository https://github.com/galaxyproject/tools-iuc/tree/master/tools/ncbi_entrez_eutils commit dae34e5e182b4cceb808d7353080f14aa9a78ca9"
 iuc parents: 
1diff
changeset | 101 # When rettype is uilist, convert to text format (which elink does not do) | 
| 
ae3a5d753d42
"planemo upload for repository https://github.com/galaxyproject/tools-iuc/tree/master/tools/ncbi_entrez_eutils commit dae34e5e182b4cceb808d7353080f14aa9a78ca9"
 iuc parents: 
1diff
changeset | 102 if args.retmode == 'json': | 
| 
ae3a5d753d42
"planemo upload for repository https://github.com/galaxyproject/tools-iuc/tree/master/tools/ncbi_entrez_eutils commit dae34e5e182b4cceb808d7353080f14aa9a78ca9"
 iuc parents: 
1diff
changeset | 103 json_data = c.jsonstring2jsondata(results[0]) | 
| 
ae3a5d753d42
"planemo upload for repository https://github.com/galaxyproject/tools-iuc/tree/master/tools/ncbi_entrez_eutils commit dae34e5e182b4cceb808d7353080f14aa9a78ca9"
 iuc parents: 
1diff
changeset | 104 print(json.dumps(json_data, indent=4)) | 
| 
ae3a5d753d42
"planemo upload for repository https://github.com/galaxyproject/tools-iuc/tree/master/tools/ncbi_entrez_eutils commit dae34e5e182b4cceb808d7353080f14aa9a78ca9"
 iuc parents: 
1diff
changeset | 105 else: | 
| 
ae3a5d753d42
"planemo upload for repository https://github.com/galaxyproject/tools-iuc/tree/master/tools/ncbi_entrez_eutils commit dae34e5e182b4cceb808d7353080f14aa9a78ca9"
 iuc parents: 
1diff
changeset | 106 print(results[0]) | 
