Guest User

Untitled

a guest
Oct 15th, 2019
23
Never
Not a member of Pastebin yet? Sign Up, it unlocks many cool features!
  1. import re
  2.  
  3. symbols = {"👤": "nick",
  4. "❤️️": "hp",
  5. "⚔️": "damage",
  6. "🛡": "armor",
  7. "💪": "strength",
  8. "🎯": "accuracy",
  9. "🗣": "charisma",
  10. # "🤸🏽‍♂️‍": "dexterity",
  11. "🔋": "stamina"}
  12.  
  13.  
  14. def parser(text):
  15. data = {}
  16. print(text)
  17. if text[0] != "📟":
  18. params = dict(re.findall(r'(?m)(👤|❤️|⚔️|🛡|💪|🎯|🗣|🔋)\s*(?:\d+/)?(\w+)', text))
  19. for p in params:
  20. data.setdefault(symbols.get(p), params[p])
  21. else:
  22. params = dict(re.findall(r'(?m)(❤️Здоровье:|⚔️Урон:|🛡Броня:|💪Сила:|🎯Меткость:|🗣Харизма:|🔋Выносливость:)\s*(?:\d+/)?(\w+)', text))
  23. print(params)
  24. for p in params:
  25. print(p[0], p[0] == "⚔️", params[p])
  26. data.setdefault(symbols.get("❤️️") if p[0] == "❤" else symbols.get(p[0]), params[p])
  27. name = text.split("\n")[2]
  28. data.setdefault(symbols.get("👤"), name.split(",")[0])
  29. print(data)
  30. return data
  31. #
  32. #
  33. # вывод:
  34. 📟Пип-бой 3000 v2.2b1
  35.  
  36. Rushka, 💣Мегатонна
  37. 🤟Банда: без банды
  38. ❤️Здоровье: 597/501
  39. ☠️Голод: 34% /myfood
  40. ⚔️Урон: 818 🛡Броня: 197
  41.  
  42. 💪Сила: 540 🎯Меткость: 1
  43. 🗣Харизма: 110 🤸🏽‍♂️Ловкость: 250
  44.  
  45. 🔋Выносливость: 8/19 /ref
  46. 📍Пустошь, 👣14км.
  47.  
  48. Экипировка:
  49. ⚙️Шлем "Рейдер-пес" +40🛡 🔧55%
  50. 🛠Мультизащита🏅 +157🛡 🔧31%
  51. ✳️Протонный топор +278⚔️ 🔧79%
  52. 📥Модуль регенерации
  53.  
  54. Ресурсы:
  55. 🕳Крышки: 3949
  56. 📦Материалы: 216
  57. 💈Пупсы: 1 /thanks
  58. 🏆Рейтинг /wwtop
  59.  
  60. Репутация:
  61. Нейтральный
  62. 🏵2 ▓░░░░░░░░░
  63. ID404671030
  64. Нет данных о последнем рейде.
  65. {'❤️Здоровье:': '501', '⚔️Урон:': '818', '🛡Броня:': '197', '💪Сила:': '540', '🎯Меткость:': '1', '🗣Харизма:': '110', '🔋Выносливость:': '19'}
  66. ❤ False 501
  67. ⚔ False 818
  68. 🛡 False 197
  69. 💪 False 540
  70. 🎯 False 1
  71. 🗣 False 110
  72. 🔋 False 19
  73. {'hp': '501', None: '818', 'armor': '197', 'strength': '540', 'accuracy': '1', 'charisma': '110', 'stamina': '19', 'nick': 'Rushka'}
RAW Paste Data