Mercurial > repos > iuc > ncbi_eutils_egquery
annotate ecitmatch.py @ 4:85d9183d1200 draft
"planemo upload for repository https://github.com/galaxyproject/tools-iuc/tree/master/tools/ncbi_entrez_eutils commit 25545b698cffc9999cde0079b3be176f55e17803"
| author | iuc | 
|---|---|
| date | Mon, 04 Jan 2021 11:43:16 +0000 | 
| parents | d1789b4821fc | 
| children | 
| rev | line source | 
|---|---|
| 
0
 
9d18e6815994
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
 
28f69754ddc5
planemo upload for repository https://github.com/galaxyproject/tools-iuc/tree/master/tools/ncbi_entrez_eutils commit a4b0969b33a68a0ea9ba12291f6694aec24f13ed
 
iuc 
parents: 
0 
diff
changeset
 | 
2 | 
| 
0
 
9d18e6815994
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 | 
| 
1
 
28f69754ddc5
planemo upload for repository https://github.com/galaxyproject/tools-iuc/tree/master/tools/ncbi_entrez_eutils commit a4b0969b33a68a0ea9ba12291f6694aec24f13ed
 
iuc 
parents: 
0 
diff
changeset
 | 
4 | 
| 
0
 
9d18e6815994
planemo upload for repository https://github.com/galaxyproject/tools-iuc/tree/master/tools/ncbi_entrez_eutils commit 15bcc5104c577b4b9c761f2854fc686c07ffa9db
 
iuc 
parents:  
diff
changeset
 | 
5 import eutils | 
| 
 
9d18e6815994
planemo upload for repository https://github.com/galaxyproject/tools-iuc/tree/master/tools/ncbi_entrez_eutils commit 15bcc5104c577b4b9c761f2854fc686c07ffa9db
 
iuc 
parents:  
diff
changeset
 | 
6 | 
| 
 
9d18e6815994
planemo upload for repository https://github.com/galaxyproject/tools-iuc/tree/master/tools/ncbi_entrez_eutils commit 15bcc5104c577b4b9c761f2854fc686c07ffa9db
 
iuc 
parents:  
diff
changeset
 | 
7 | 
| 
 
9d18e6815994
planemo upload for repository https://github.com/galaxyproject/tools-iuc/tree/master/tools/ncbi_entrez_eutils commit 15bcc5104c577b4b9c761f2854fc686c07ffa9db
 
iuc 
parents:  
diff
changeset
 | 
8 if __name__ == '__main__': | 
| 
 
9d18e6815994
planemo upload for repository https://github.com/galaxyproject/tools-iuc/tree/master/tools/ncbi_entrez_eutils commit 15bcc5104c577b4b9c761f2854fc686c07ffa9db
 
iuc 
parents:  
diff
changeset
 | 
9 parser = argparse.ArgumentParser(description='ECitMatch', epilog='') | 
| 
 
9d18e6815994
planemo upload for repository https://github.com/galaxyproject/tools-iuc/tree/master/tools/ncbi_entrez_eutils commit 15bcc5104c577b4b9c761f2854fc686c07ffa9db
 
iuc 
parents:  
diff
changeset
 | 
10 parser.add_argument('--file', type=argparse.FileType('r'), help='Tabular file containing citations to search') | 
| 
 
9d18e6815994
planemo upload for repository https://github.com/galaxyproject/tools-iuc/tree/master/tools/ncbi_entrez_eutils commit 15bcc5104c577b4b9c761f2854fc686c07ffa9db
 
iuc 
parents:  
diff
changeset
 | 
11 | 
| 
 
9d18e6815994
planemo upload for repository https://github.com/galaxyproject/tools-iuc/tree/master/tools/ncbi_entrez_eutils commit 15bcc5104c577b4b9c761f2854fc686c07ffa9db
 
iuc 
parents:  
diff
changeset
 | 
12 parser.add_argument('--key', nargs='*', help='Citation Key') | 
| 
 
9d18e6815994
planemo upload for repository https://github.com/galaxyproject/tools-iuc/tree/master/tools/ncbi_entrez_eutils commit 15bcc5104c577b4b9c761f2854fc686c07ffa9db
 
iuc 
parents:  
diff
changeset
 | 
13 parser.add_argument('--journal_title', nargs='*', help='Journal Title') | 
| 
 
9d18e6815994
planemo upload for repository https://github.com/galaxyproject/tools-iuc/tree/master/tools/ncbi_entrez_eutils commit 15bcc5104c577b4b9c761f2854fc686c07ffa9db
 
iuc 
parents:  
diff
changeset
 | 
14 parser.add_argument('--year', nargs='*', help='Year') | 
| 
 
9d18e6815994
planemo upload for repository https://github.com/galaxyproject/tools-iuc/tree/master/tools/ncbi_entrez_eutils commit 15bcc5104c577b4b9c761f2854fc686c07ffa9db
 
iuc 
parents:  
diff
changeset
 | 
15 parser.add_argument('--volume', nargs='*', help='Volume') | 
| 
 
9d18e6815994
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('--first_page', nargs='*', help='First Page') | 
| 
 
9d18e6815994
planemo upload for repository https://github.com/galaxyproject/tools-iuc/tree/master/tools/ncbi_entrez_eutils commit 15bcc5104c577b4b9c761f2854fc686c07ffa9db
 
iuc 
parents:  
diff
changeset
 | 
17 parser.add_argument('--author_name', nargs='*', help='Author name') | 
| 
 
9d18e6815994
planemo upload for repository https://github.com/galaxyproject/tools-iuc/tree/master/tools/ncbi_entrez_eutils commit 15bcc5104c577b4b9c761f2854fc686c07ffa9db
 
iuc 
parents:  
diff
changeset
 | 
18 | 
| 
3
 
d1789b4821fc
"planemo upload for repository https://github.com/galaxyproject/tools-iuc/tree/master/tools/ncbi_entrez_eutils commit dae34e5e182b4cceb808d7353080f14aa9a78ca9"
 
iuc 
parents: 
1 
diff
changeset
 | 
19 parser.add_argument('--version', action='version', version=eutils.Client.getVersion(), help='Version (reports Biopython version)') | 
| 
 
d1789b4821fc
"planemo upload for repository https://github.com/galaxyproject/tools-iuc/tree/master/tools/ncbi_entrez_eutils commit dae34e5e182b4cceb808d7353080f14aa9a78ca9"
 
iuc 
parents: 
1 
diff
changeset
 | 
20 | 
| 
0
 
9d18e6815994
planemo upload for repository https://github.com/galaxyproject/tools-iuc/tree/master/tools/ncbi_entrez_eutils commit 15bcc5104c577b4b9c761f2854fc686c07ffa9db
 
iuc 
parents:  
diff
changeset
 | 
21 # Emails | 
| 
 
9d18e6815994
planemo upload for repository https://github.com/galaxyproject/tools-iuc/tree/master/tools/ncbi_entrez_eutils commit 15bcc5104c577b4b9c761f2854fc686c07ffa9db
 
iuc 
parents:  
diff
changeset
 | 
22 parser.add_argument('--user_email', help="User email") | 
| 
 
9d18e6815994
planemo upload for repository https://github.com/galaxyproject/tools-iuc/tree/master/tools/ncbi_entrez_eutils commit 15bcc5104c577b4b9c761f2854fc686c07ffa9db
 
iuc 
parents:  
diff
changeset
 | 
23 parser.add_argument('--admin_email', help="Admin email") | 
| 
 
9d18e6815994
planemo upload for repository https://github.com/galaxyproject/tools-iuc/tree/master/tools/ncbi_entrez_eutils commit 15bcc5104c577b4b9c761f2854fc686c07ffa9db
 
iuc 
parents:  
diff
changeset
 | 
24 args = parser.parse_args() | 
| 
 
9d18e6815994
planemo upload for repository https://github.com/galaxyproject/tools-iuc/tree/master/tools/ncbi_entrez_eutils commit 15bcc5104c577b4b9c761f2854fc686c07ffa9db
 
iuc 
parents:  
diff
changeset
 | 
25 | 
| 
 
9d18e6815994
planemo upload for repository https://github.com/galaxyproject/tools-iuc/tree/master/tools/ncbi_entrez_eutils commit 15bcc5104c577b4b9c761f2854fc686c07ffa9db
 
iuc 
parents:  
diff
changeset
 | 
26 c = eutils.Client(user_email=args.user_email, admin_email=args.admin_email) | 
| 
 
9d18e6815994
planemo upload for repository https://github.com/galaxyproject/tools-iuc/tree/master/tools/ncbi_entrez_eutils commit 15bcc5104c577b4b9c761f2854fc686c07ffa9db
 
iuc 
parents:  
diff
changeset
 | 
27 | 
| 
 
9d18e6815994
planemo upload for repository https://github.com/galaxyproject/tools-iuc/tree/master/tools/ncbi_entrez_eutils commit 15bcc5104c577b4b9c761f2854fc686c07ffa9db
 
iuc 
parents:  
diff
changeset
 | 
28 citations = [] | 
| 
 
9d18e6815994
planemo upload for repository https://github.com/galaxyproject/tools-iuc/tree/master/tools/ncbi_entrez_eutils commit 15bcc5104c577b4b9c761f2854fc686c07ffa9db
 
iuc 
parents:  
diff
changeset
 | 
29 if args.file is None: | 
| 
 
9d18e6815994
planemo upload for repository https://github.com/galaxyproject/tools-iuc/tree/master/tools/ncbi_entrez_eutils commit 15bcc5104c577b4b9c761f2854fc686c07ffa9db
 
iuc 
parents:  
diff
changeset
 | 
30 for key, journal, year, volume, first_page, author_name in \ | 
| 
 
9d18e6815994
planemo upload for repository https://github.com/galaxyproject/tools-iuc/tree/master/tools/ncbi_entrez_eutils commit 15bcc5104c577b4b9c761f2854fc686c07ffa9db
 
iuc 
parents:  
diff
changeset
 | 
31 zip(args.key, args.journal_title, args.year, args.volume, args.first_page, args.author_name): | 
| 
 
9d18e6815994
planemo upload for repository https://github.com/galaxyproject/tools-iuc/tree/master/tools/ncbi_entrez_eutils commit 15bcc5104c577b4b9c761f2854fc686c07ffa9db
 
iuc 
parents:  
diff
changeset
 | 
32 citations.append({ | 
| 
 
9d18e6815994
planemo upload for repository https://github.com/galaxyproject/tools-iuc/tree/master/tools/ncbi_entrez_eutils commit 15bcc5104c577b4b9c761f2854fc686c07ffa9db
 
iuc 
parents:  
diff
changeset
 | 
33 'key': key, | 
| 
 
9d18e6815994
planemo upload for repository https://github.com/galaxyproject/tools-iuc/tree/master/tools/ncbi_entrez_eutils commit 15bcc5104c577b4b9c761f2854fc686c07ffa9db
 
iuc 
parents:  
diff
changeset
 | 
34 'journal': journal, | 
| 
 
9d18e6815994
planemo upload for repository https://github.com/galaxyproject/tools-iuc/tree/master/tools/ncbi_entrez_eutils commit 15bcc5104c577b4b9c761f2854fc686c07ffa9db
 
iuc 
parents:  
diff
changeset
 | 
35 'year': year, | 
| 
 
9d18e6815994
planemo upload for repository https://github.com/galaxyproject/tools-iuc/tree/master/tools/ncbi_entrez_eutils commit 15bcc5104c577b4b9c761f2854fc686c07ffa9db
 
iuc 
parents:  
diff
changeset
 | 
36 'volume': volume, | 
| 
 
9d18e6815994
planemo upload for repository https://github.com/galaxyproject/tools-iuc/tree/master/tools/ncbi_entrez_eutils commit 15bcc5104c577b4b9c761f2854fc686c07ffa9db
 
iuc 
parents:  
diff
changeset
 | 
37 'first_page': first_page, | 
| 
 
9d18e6815994
planemo upload for repository https://github.com/galaxyproject/tools-iuc/tree/master/tools/ncbi_entrez_eutils commit 15bcc5104c577b4b9c761f2854fc686c07ffa9db
 
iuc 
parents:  
diff
changeset
 | 
38 'author_name': author_name, | 
| 
 
9d18e6815994
planemo upload for repository https://github.com/galaxyproject/tools-iuc/tree/master/tools/ncbi_entrez_eutils commit 15bcc5104c577b4b9c761f2854fc686c07ffa9db
 
iuc 
parents:  
diff
changeset
 | 
39 }) | 
| 
 
9d18e6815994
planemo upload for repository https://github.com/galaxyproject/tools-iuc/tree/master/tools/ncbi_entrez_eutils commit 15bcc5104c577b4b9c761f2854fc686c07ffa9db
 
iuc 
parents:  
diff
changeset
 | 
40 else: | 
| 
 
9d18e6815994
planemo upload for repository https://github.com/galaxyproject/tools-iuc/tree/master/tools/ncbi_entrez_eutils commit 15bcc5104c577b4b9c761f2854fc686c07ffa9db
 
iuc 
parents:  
diff
changeset
 | 
41 for line in args.file: | 
| 
 
9d18e6815994
planemo upload for repository https://github.com/galaxyproject/tools-iuc/tree/master/tools/ncbi_entrez_eutils commit 15bcc5104c577b4b9c761f2854fc686c07ffa9db
 
iuc 
parents:  
diff
changeset
 | 
42 line = line.strip() | 
| 
 
9d18e6815994
planemo upload for repository https://github.com/galaxyproject/tools-iuc/tree/master/tools/ncbi_entrez_eutils commit 15bcc5104c577b4b9c761f2854fc686c07ffa9db
 
iuc 
parents:  
diff
changeset
 | 
43 if not line.startswith('#'): | 
| 
 
9d18e6815994
planemo upload for repository https://github.com/galaxyproject/tools-iuc/tree/master/tools/ncbi_entrez_eutils commit 15bcc5104c577b4b9c761f2854fc686c07ffa9db
 
iuc 
parents:  
diff
changeset
 | 
44 tmp = line.split('\t') | 
| 
 
9d18e6815994
planemo upload for repository https://github.com/galaxyproject/tools-iuc/tree/master/tools/ncbi_entrez_eutils commit 15bcc5104c577b4b9c761f2854fc686c07ffa9db
 
iuc 
parents:  
diff
changeset
 | 
45 try: | 
| 
 
9d18e6815994
planemo upload for repository https://github.com/galaxyproject/tools-iuc/tree/master/tools/ncbi_entrez_eutils commit 15bcc5104c577b4b9c761f2854fc686c07ffa9db
 
iuc 
parents:  
diff
changeset
 | 
46 citations.append({ | 
| 
 
9d18e6815994
planemo upload for repository https://github.com/galaxyproject/tools-iuc/tree/master/tools/ncbi_entrez_eutils commit 15bcc5104c577b4b9c761f2854fc686c07ffa9db
 
iuc 
parents:  
diff
changeset
 | 
47 'journal': tmp[0], | 
| 
 
9d18e6815994
planemo upload for repository https://github.com/galaxyproject/tools-iuc/tree/master/tools/ncbi_entrez_eutils commit 15bcc5104c577b4b9c761f2854fc686c07ffa9db
 
iuc 
parents:  
diff
changeset
 | 
48 'year': tmp[1], | 
| 
 
9d18e6815994
planemo upload for repository https://github.com/galaxyproject/tools-iuc/tree/master/tools/ncbi_entrez_eutils commit 15bcc5104c577b4b9c761f2854fc686c07ffa9db
 
iuc 
parents:  
diff
changeset
 | 
49 'volume': tmp[2], | 
| 
 
9d18e6815994
planemo upload for repository https://github.com/galaxyproject/tools-iuc/tree/master/tools/ncbi_entrez_eutils commit 15bcc5104c577b4b9c761f2854fc686c07ffa9db
 
iuc 
parents:  
diff
changeset
 | 
50 'first_page': tmp[3], | 
| 
 
9d18e6815994
planemo upload for repository https://github.com/galaxyproject/tools-iuc/tree/master/tools/ncbi_entrez_eutils commit 15bcc5104c577b4b9c761f2854fc686c07ffa9db
 
iuc 
parents:  
diff
changeset
 | 
51 'author_name': tmp[4], | 
| 
 
9d18e6815994
planemo upload for repository https://github.com/galaxyproject/tools-iuc/tree/master/tools/ncbi_entrez_eutils commit 15bcc5104c577b4b9c761f2854fc686c07ffa9db
 
iuc 
parents:  
diff
changeset
 | 
52 'key': tmp[5], | 
| 
 
9d18e6815994
planemo upload for repository https://github.com/galaxyproject/tools-iuc/tree/master/tools/ncbi_entrez_eutils commit 15bcc5104c577b4b9c761f2854fc686c07ffa9db
 
iuc 
parents:  
diff
changeset
 | 
53 }) | 
| 
 
9d18e6815994
planemo upload for repository https://github.com/galaxyproject/tools-iuc/tree/master/tools/ncbi_entrez_eutils commit 15bcc5104c577b4b9c761f2854fc686c07ffa9db
 
iuc 
parents:  
diff
changeset
 | 
54 except KeyError: | 
| 
1
 
28f69754ddc5
planemo upload for repository https://github.com/galaxyproject/tools-iuc/tree/master/tools/ncbi_entrez_eutils commit a4b0969b33a68a0ea9ba12291f6694aec24f13ed
 
iuc 
parents: 
0 
diff
changeset
 | 
55 print("Could not parse line: %s" % line) | 
| 
0
 
9d18e6815994
planemo upload for repository https://github.com/galaxyproject/tools-iuc/tree/master/tools/ncbi_entrez_eutils commit 15bcc5104c577b4b9c761f2854fc686c07ffa9db
 
iuc 
parents:  
diff
changeset
 | 
56 | 
| 
 
9d18e6815994
planemo upload for repository https://github.com/galaxyproject/tools-iuc/tree/master/tools/ncbi_entrez_eutils commit 15bcc5104c577b4b9c761f2854fc686c07ffa9db
 
iuc 
parents:  
diff
changeset
 | 
57 payload = { | 
| 
 
9d18e6815994
planemo upload for repository https://github.com/galaxyproject/tools-iuc/tree/master/tools/ncbi_entrez_eutils commit 15bcc5104c577b4b9c761f2854fc686c07ffa9db
 
iuc 
parents:  
diff
changeset
 | 
58 'db': 'pubmed', | 
| 
 
9d18e6815994
planemo upload for repository https://github.com/galaxyproject/tools-iuc/tree/master/tools/ncbi_entrez_eutils commit 15bcc5104c577b4b9c761f2854fc686c07ffa9db
 
iuc 
parents:  
diff
changeset
 | 
59 'bdata': citations | 
| 
 
9d18e6815994
planemo upload for repository https://github.com/galaxyproject/tools-iuc/tree/master/tools/ncbi_entrez_eutils commit 15bcc5104c577b4b9c761f2854fc686c07ffa9db
 
iuc 
parents:  
diff
changeset
 | 
60 } | 
| 
 
9d18e6815994
planemo upload for repository https://github.com/galaxyproject/tools-iuc/tree/master/tools/ncbi_entrez_eutils commit 15bcc5104c577b4b9c761f2854fc686c07ffa9db
 
iuc 
parents:  
diff
changeset
 | 
61 | 
| 
 
9d18e6815994
planemo upload for repository https://github.com/galaxyproject/tools-iuc/tree/master/tools/ncbi_entrez_eutils commit 15bcc5104c577b4b9c761f2854fc686c07ffa9db
 
iuc 
parents:  
diff
changeset
 | 
62 results = c.citmatch(**payload) | 
| 
 
9d18e6815994
planemo upload for repository https://github.com/galaxyproject/tools-iuc/tree/master/tools/ncbi_entrez_eutils commit 15bcc5104c577b4b9c761f2854fc686c07ffa9db
 
iuc 
parents:  
diff
changeset
 | 
63 # We get data back as pipe separated, so just replace those with tabs | 
| 
1
 
28f69754ddc5
planemo upload for repository https://github.com/galaxyproject/tools-iuc/tree/master/tools/ncbi_entrez_eutils commit a4b0969b33a68a0ea9ba12291f6694aec24f13ed
 
iuc 
parents: 
0 
diff
changeset
 | 
64 print(results.replace('|', '\t')) | 
