flaskapp.py 1.1 KB

12345678910111213141516171819202122232425262728293031323334353637383940414243444546474849
  1. import subprocess
  2. from flask import Flask, render_template
  3. from dotenv import load_dotenv
  4. import os
  5. load_dotenv()
  6. app = Flask(__name__)
  7. @app.route("/")
  8. def home():
  9. result = subprocess.run(
  10. [
  11. os.environ["MCRCON"],
  12. "-H",
  13. os.environ["HOST"],
  14. "-p",
  15. os.environ["PASSWORD"],
  16. "list uuids",
  17. ],
  18. capture_output=True,
  19. text=True,
  20. )
  21. messages = result.stdout.strip().split(": ")
  22. messagelist = messages[0].split(" ")
  23. usercount = messagelist[2]
  24. maxcount = messagelist[7]
  25. userlist = None
  26. usercombolist = None
  27. if len(messages) > 1:
  28. userlist = messages[1].split(", ")
  29. usercombolist = []
  30. for user in userlist:
  31. username = user[: user.find(" ")]
  32. uuid = user[user.find("(") + 1 : -1]
  33. usercombolist.append((username, uuid))
  34. return render_template(
  35. "home.html",
  36. usercount=usercount,
  37. maxcount=maxcount,
  38. userlist=usercombolist,
  39. )
  40. if __name__ == "__main__":
  41. app.run(host="0.0.0.0")