process.py 852 B

12345678910111213141516171819202122232425262728
  1. def flush_data(address, taskname, data):
  2. if data:
  3. urllib2.urlopen(urllib2.Request(address, urllib.urlencode({"op": "set_input", "data": json.dumps(data), "taskname": taskname})), timeout=10).read()
  4. return []
  5. def fetch_output(address, taskname):
  6. val = urllib2.urlopen(urllib2.Request(address, urllib.urlencode({"op": "get_output", "taskname": taskname})), timeout=10).read()
  7. l, r = output.split("&", 1)
  8. if "value" in l:
  9. output = r
  10. else:
  11. output = l
  12. _, output = output.split("=", 1)
  13. return output
  14. def send_to_mv(address, taskname, lst):
  15. data = []
  16. variables = {}
  17. for c in lst:
  18. if isinstance(c, int):
  19. data = flush_data(address, taskname, data)
  20. variables[c] = fetch_output(address, taskname)
  21. else:
  22. data.append(c)
  23. return variables