mirror of
https://github.com/galaxyproject/galaxy.git
synced 2026-09-19 10:51:34 +08:00
62 lines
1.8 KiB
Python
62 lines
1.8 KiB
Python
"""
|
|
Sample script for Galaxy Search API
|
|
"""
|
|
|
|
import json
|
|
import sys
|
|
|
|
import requests
|
|
|
|
|
|
class RemoteGalaxy:
|
|
def __init__(self, url, api_key):
|
|
self.url = url
|
|
self.api_key = api_key
|
|
|
|
def get(self, path):
|
|
c_url = self.url + path
|
|
params = {}
|
|
params["key"] = self.api_key
|
|
req = requests.get(c_url, params=params)
|
|
return req.json()
|
|
|
|
def post(self, path, payload):
|
|
c_url = self.url + path
|
|
params = {}
|
|
params["key"] = self.api_key
|
|
req = requests.post(
|
|
c_url, data=json.dumps(payload), params=params, headers={"Content-Type": "application/json"}
|
|
)
|
|
return req.json()
|
|
|
|
|
|
if __name__ == "__main__":
|
|
server = sys.argv[1]
|
|
api_key = sys.argv[2]
|
|
|
|
rg = RemoteGalaxy(server, api_key)
|
|
|
|
print("select name, id, file_size from hda")
|
|
print(rg.post("/api/search", {"query": "select name, id, file_size from hda"}))
|
|
|
|
print("select name from hda")
|
|
print(rg.post("/api/search", {"query": "select name from hda"}))
|
|
|
|
print("select name, model_class from ldda")
|
|
print(rg.post("/api/search", {"query": "select name, model_class from ldda"}))
|
|
|
|
print("select * from history")
|
|
print(rg.post("/api/search", {"query": "select * from history"}))
|
|
|
|
print("select * from tool")
|
|
print(rg.post("/api/search", {"query": "select * from tool"}))
|
|
|
|
print("select * from workflow")
|
|
print(rg.post("/api/search", {"query": "select * from workflow"}))
|
|
|
|
print("select id, name from history where name='Unnamed history'")
|
|
print(rg.post("/api/search", {"query": "select id, name from history where name='Unnamed history'"}))
|
|
|
|
print("select * from history where name='Unnamed history'")
|
|
print(rg.post("/api/search", {"query": "select * from history where name='Unnamed history'"}))
|