Project

General

Profile

1 4918 aaronmk
#!/usr/bin/env python
2
# A TNRS client
3 4920 aaronmk
# When using xargs to pass many names, note that xargs will by default split its
4
# arguments into chunks of 5000. You can change this using the -n option.
5 4918 aaronmk
# Note that obtaining an actual CSV requires four (!) steps: submit, retrieve,
6 4991 aaronmk
# prepare download, and download.
7 4918 aaronmk
8
import os.path
9
import sys
10
11
sys.path.append(os.path.dirname(__file__)+"/../lib")
12
13
import opts
14 5006 aaronmk
import streams
15 4991 aaronmk
import tnrs
16 4918 aaronmk
17 4989 aaronmk
def main():
18
    # Input
19
    env_names = []
20
    debug = opts.env_flag('debug', False, env_names)
21 14575 aaronmk
    use_tnrs_export = opts.env_flag('use_tnrs_export', True, env_names)
22 5121 aaronmk
    names = sys.argv[1:]
23
    if not names: raise SystemExit('Usage: '+opts.env_usage(env_names, True)
24
        +' '+sys.argv[0]+' name... >out 2>>log')
25 4989 aaronmk
26 14575 aaronmk
    streams.copy(tnrs.tnrs_request(names, debug,
27
        use_tnrs_export=use_tnrs_export), sys.stdout)
28 4989 aaronmk
29 4918 aaronmk
main()