main.py 2.1 KB

1234567891011121314151617181920212223242526272829303132333435363738394041424344454647484950515253545556575859606162
  1. import datetime
  2. from http.server import HTTPServer, BaseHTTPRequestHandler
  3. import requests
  4. class HttpGethandler(BaseHTTPRequestHandler):
  5. def do_GET(self):
  6. try:
  7. if self.path.endswith("/"):
  8. self.send_response(200)
  9. self.send_header("Content-type", "text/html")
  10. self.end_headers()
  11. html = f"<html><head><meta charset='utf-8'><title>HTTP-Server</title></head>" \
  12. f"<body>HTTP-Server working" \
  13. f"</body></html>"
  14. self.wfile.write(html.encode())
  15. if self.path.endswith("/info"):
  16. self.send_response(200)
  17. self.send_header("Content-type", "text/html")
  18. self.end_headers()
  19. html = f"<html><head><meta charset='utf-8'><title>HTTP-Server</title></head>" \
  20. f"<body>Ondar Ajhaan 701(3)" \
  21. f"</body></html>"
  22. self.wfile.write(html.encode())
  23. if self.path.endswith("/status"):
  24. self.send_response(200)
  25. self.send_header("Content-type", "text/html")
  26. self.end_headers()
  27. get = requests.get('https://api.ipify.org/')
  28. html = f"<html><head><meta charset='utf-8'><title>Damned HTTP-Server</title></head>" \
  29. f"<body>Your IP address on the HTTP-Server: {get.text}<br>" \
  30. f"Ondar A.V. 701(3)<br>" \
  31. f"Time on the HTTP-Server: {str(datetime.datetime.now())}" \
  32. f"</body></html>"
  33. self.wfile.write(html.encode())
  34. except IOError:
  35. self.send_error(400, f"HTTP-Server no found{self.path}")
  36. def main(server_class=HTTPServer, handler_class=HttpGethandler):
  37. server_address = ('localhost', 8000)
  38. httpd = server_class(server_address, handler_class)
  39. try:
  40. print("HTTP-Server started!")
  41. httpd.serve_forever()
  42. except KeyboardInterrupt:
  43. httpd.server_close()
  44. print("HTTP-Server stopped!")
  45. if __name__ == '__main__':
  46. main()