Advertisement
Guest User

Untitled

a guest
May 24th, 2015
187
0
Never
Not a member of Pastebin yet? Sign Up, it unlocks many cool features!
text 1.11 KB | None | 0 0
  1. import sys
  2. import re
  3. import json
  4.  
  5. def readfile(filename):
  6. read_data = None
  7. with open(filename, 'r') as f:
  8. read_data = f.read()
  9. return read_data
  10.  
  11. def collect_ability_upgrades(s):
  12. d = {}
  13. for k, v in s:
  14. if k not in d:
  15. d[k] = []
  16. d[k].append(v)
  17. return d
  18.  
  19. def to_json(data):
  20. #все слова в кавычки
  21. data = re.sub(r'([a-zA-Z_]+)', r'"\1"', data)
  22. data = re.sub(r'(\d+)', r'\1,', data)
  23. data = re.sub(r'({)', r':\1', data)
  24. data = re.sub(r'(})', r'\1,', data)
  25. data = data.replace(" ", "")
  26. data = re.sub(r'\n', r"", data)
  27. data = re.sub(r'(,)\r(\})', r'\2', data)
  28. data = "{" + data + "}"
  29. f = open('myfile','w') #eto debug
  30. f.write(data)
  31. f.close()
  32. data = json.loads(data, object_pairs_hook=collect_ability_upgrades)
  33. return data
  34.  
  35. if __name__ == "__main__":
  36. all_file = readfile(sys.argv[1])
  37. start = all_file.index('teams {')
  38. finish = all_file.index('tower_status')
  39. my_json = all_file[start:finish]
  40. my_json = to_json(my_json)
  41. print(my_json)
Advertisement
Add Comment
Please, Sign In to add comment
Advertisement