main.py 1.9 KB

1234567891011121314151617181920212223242526272829303132333435363738394041424344454647484950515253545556575859
  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>Ондар Ай-Хаан 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. http_text = f' <!doctype html><html><head><meta charset= utf-8><body>IP-адрес: {get.text}<br>Время: {datetime.now()}</body></html>'
  29. self.wfile.write(html.encode())
  30. except IOError:
  31. self.send_error(400, f"HTTP-Server no found{self.path}")
  32. def main(server_class=HTTPServer, handler_class=HttpGethandler):
  33. server_address = ('localhost', 8000)
  34. httpd = server_class(server_address, handler_class)
  35. try:
  36. print("HTTP-Server started!")
  37. httpd.serve_forever()
  38. except KeyboardInterrupt:
  39. httpd.server_close()
  40. print("HTTP-Server stopped!")
  41. if __name__ == '__main__':
  42. main()