Advertisement
Guest User

Untitled

a guest
Apr 24th, 2020
89
0
Never
Not a member of Pastebin yet? Sign Up, it unlocks many cool features!
text 3.43 KB | None | 0 0
  1. import xml.etree.ElementTree as ET
  2. tree = ET.parse('sensor.xml')
  3. root = tree.getroot()
  4.  
  5.  
  6. def publishMQTT(mqtt_tree="", mqtt_value=""):
  7. os.system("/usr/bin/mosquitto_pub -t 'emon/'" + mqtt_tree + " -m " + str(mqtt_value))
  8.  
  9. for child in root:
  10. if child.tag == "current":
  11. print "current: " + child.text
  12. publishMQTT("ALL4500/current", child.text)
  13. for subatt1 in child.iter('minmax'):
  14. for subatt2 in subatt1.iter('today'):
  15. for subatt3 in subatt2.iter('min'):
  16. for param_value in subatt3.iter('value'):
  17. value = param_value.text
  18. print "value: " + value
  19. publishMQTT("ALL4500/today/min-value", value))
  20. for param_value in subatt3.iter('date'):
  21. date = param_value.text
  22. print "date: " + date
  23. publishMQTT("ALL4500/today/min-date", date))
  24. for param_value in subatt3.iter('timestamp'):
  25. timestamp = param_value.text
  26. print "timestamp: " + timestamp
  27. publishMQTT("ALL4500/today/min-timestamp", timestamp))
  28. for subatt3 in subatt2.iter('max'):
  29. for param_value in subatt3.iter('value'):
  30. value = param_value.text
  31. print "value: " + value
  32. publishMQTT("ALL4500/today/max-value", value))
  33. for param_value in subatt3.iter('date'):
  34. date = param_value.text
  35. print "date: " + date
  36. publishMQTT("ALL4500/today/max-date", date))
  37. for param_value in subatt3.iter('timestamp'):
  38. timestamp = param_value.text
  39. print "timestamp: " + timestamp
  40. publishMQTT("ALL4500/today/max-timestamp", timestamp))
  41. for subatt2 in subatt1.iter('absolute'):
  42. for subatt3 in subatt2.iter('min'):
  43. for param_value in subatt3.iter('value'):
  44. value = param_value.text
  45. print "value: " + value
  46. publishMQTT("ALL4500/absolute/min-value", value))
  47. for param_value in subatt3.iter('date'):
  48. date = param_value.text
  49. print "date: " + date
  50. publishMQTT("ALL4500/absolute/min-date", date))
  51. for param_value in subatt3.iter('timestamp'):
  52. timestamp = param_value.text
  53. print "timestamp: " + timestamp
  54. publishMQTT("ALL4500/absolute/min-timestamp", timestamp))
  55. for subatt3 in subatt2.iter('max'):
  56. for param_value in subatt3.iter('value'):
  57. value = param_value.text
  58. print "value: " + value
  59. publishMQTT("ALL4500/absolute/max-value", value))
  60. for param_value in subatt3.iter('date'):
  61. date = param_value.text
  62. print "date: " + date
  63. publishMQTT("ALL4500/absolute/max-date", date))
  64. for param_value in subatt3.iter('timestamp'):
  65. timestamp = param_value.text
  66. print "timestamp: " + timestamp
  67. publishMQTT("ALL4500/absolute/max-timestamp", timestamp))
Advertisement
Add Comment
Please, Sign In to add comment
Advertisement