annotate rest_tool.py @ 2:d3f9c70919dc draft

Uploaded
author bernhardlutz
date Mon, 24 Mar 2014 14:00:06 -0400
parents
children
Ignore whitespace changes - Everywhere: Within whitespace: At end of lines:
rev   line source
2
d3f9c70919dc Uploaded
bernhardlutz
parents:
diff changeset
1 #!/usr/bin/env python
d3f9c70919dc Uploaded
bernhardlutz
parents:
diff changeset
2 # Aufruf convert_graph.py --type type --operation op --id id --outformat format --outfile outfile
d3f9c70919dc Uploaded
bernhardlutz
parents:
diff changeset
3
d3f9c70919dc Uploaded
bernhardlutz
parents:
diff changeset
4 import sys, os
d3f9c70919dc Uploaded
bernhardlutz
parents:
diff changeset
5 import networkx as nx
d3f9c70919dc Uploaded
bernhardlutz
parents:
diff changeset
6 import argparse
d3f9c70919dc Uploaded
bernhardlutz
parents:
diff changeset
7 import urllib2
d3f9c70919dc Uploaded
bernhardlutz
parents:
diff changeset
8
d3f9c70919dc Uploaded
bernhardlutz
parents:
diff changeset
9 #supported graph_types
d3f9c70919dc Uploaded
bernhardlutz
parents:
diff changeset
10 output_types = ["tsv", "csv", "png", "json", "txt", "xml", "sdf", "asnt", "asnb", "jsonp"]
d3f9c70919dc Uploaded
bernhardlutz
parents:
diff changeset
11
d3f9c70919dc Uploaded
bernhardlutz
parents:
diff changeset
12
d3f9c70919dc Uploaded
bernhardlutz
parents:
diff changeset
13 def getresult(url):
d3f9c70919dc Uploaded
bernhardlutz
parents:
diff changeset
14 try:
d3f9c70919dc Uploaded
bernhardlutz
parents:
diff changeset
15 connection = urllib2.urlopen(url)
d3f9c70919dc Uploaded
bernhardlutz
parents:
diff changeset
16 except urllib2.HTTPError, e:
d3f9c70919dc Uploaded
bernhardlutz
parents:
diff changeset
17 return ""
d3f9c70919dc Uploaded
bernhardlutz
parents:
diff changeset
18 else:
d3f9c70919dc Uploaded
bernhardlutz
parents:
diff changeset
19 return connection.read().rstrip()
d3f9c70919dc Uploaded
bernhardlutz
parents:
diff changeset
20 def main(args):
d3f9c70919dc Uploaded
bernhardlutz
parents:
diff changeset
21 url="http://pubchem.ncbi.nlm.nih.gov/rest/pug/"+args.type+"/"
d3f9c70919dc Uploaded
bernhardlutz
parents:
diff changeset
22 if args.type == "assay":
d3f9c70919dc Uploaded
bernhardlutz
parents:
diff changeset
23 url+="aid/"
d3f9c70919dc Uploaded
bernhardlutz
parents:
diff changeset
24 elif args.type == "compound":
d3f9c70919dc Uploaded
bernhardlutz
parents:
diff changeset
25 url+="cid/"
d3f9c70919dc Uploaded
bernhardlutz
parents:
diff changeset
26 url+=args.id+"/"+args.operation+"/"+args.outformat
d3f9c70919dc Uploaded
bernhardlutz
parents:
diff changeset
27 print(url)
d3f9c70919dc Uploaded
bernhardlutz
parents:
diff changeset
28 print(args.type)
d3f9c70919dc Uploaded
bernhardlutz
parents:
diff changeset
29 data=getresult(url)
d3f9c70919dc Uploaded
bernhardlutz
parents:
diff changeset
30 file=args.outfile
d3f9c70919dc Uploaded
bernhardlutz
parents:
diff changeset
31 file.write(data)
d3f9c70919dc Uploaded
bernhardlutz
parents:
diff changeset
32 file.close()
d3f9c70919dc Uploaded
bernhardlutz
parents:
diff changeset
33
d3f9c70919dc Uploaded
bernhardlutz
parents:
diff changeset
34 if __name__ == "__main__":
d3f9c70919dc Uploaded
bernhardlutz
parents:
diff changeset
35 parser = argparse.ArgumentParser()
d3f9c70919dc Uploaded
bernhardlutz
parents:
diff changeset
36 parser.add_argument('--type', type=str,
d3f9c70919dc Uploaded
bernhardlutz
parents:
diff changeset
37 help="That you want BioAssay Compund ...")
d3f9c70919dc Uploaded
bernhardlutz
parents:
diff changeset
38 parser.add_argument('--id', type=str,
d3f9c70919dc Uploaded
bernhardlutz
parents:
diff changeset
39 help="Specify the ID")
d3f9c70919dc Uploaded
bernhardlutz
parents:
diff changeset
40 parser.add_argument('--operation', type=str,
d3f9c70919dc Uploaded
bernhardlutz
parents:
diff changeset
41 help="Specify the operation")
d3f9c70919dc Uploaded
bernhardlutz
parents:
diff changeset
42 parser.add_argument('--property-value', type=str,
d3f9c70919dc Uploaded
bernhardlutz
parents:
diff changeset
43 help="Specify the property")
d3f9c70919dc Uploaded
bernhardlutz
parents:
diff changeset
44 parser.add_argument('--outformat', type=str,
d3f9c70919dc Uploaded
bernhardlutz
parents:
diff changeset
45 help="Specify the format of the output", choices = output_types)
d3f9c70919dc Uploaded
bernhardlutz
parents:
diff changeset
46 parser.add_argument('--outfile', type=argparse.FileType('w'),
d3f9c70919dc Uploaded
bernhardlutz
parents:
diff changeset
47 help="Specify one output file")
d3f9c70919dc Uploaded
bernhardlutz
parents:
diff changeset
48 if len(sys.argv) < 8:
d3f9c70919dc Uploaded
bernhardlutz
parents:
diff changeset
49 print "Too few arguments..."
d3f9c70919dc Uploaded
bernhardlutz
parents:
diff changeset
50 parser.print_help()
d3f9c70919dc Uploaded
bernhardlutz
parents:
diff changeset
51 exit(1)
d3f9c70919dc Uploaded
bernhardlutz
parents:
diff changeset
52 args = parser.parse_args()
d3f9c70919dc Uploaded
bernhardlutz
parents:
diff changeset
53 main( args )