main.py 1.9 KB

12345678910111213141516171819202122232425262728293031323334353637383940414243444546474849505152535455565758
  1. from datetime 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. http_text = """<html><head><meta charset='utf-8'
  12. <title>Main</title></head>
  13. <body>Это Main.</body></html>"""
  14. self.wfile.write(http_text.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. http_text = """<html><head><meta charset='utf-8'
  20. <title>Лаптев А.А 703</title></head></html>"""
  21. self.wfile.write(http_text.encode())
  22. if self.path.endswith("/status"):
  23. self.send_response(200)
  24. self.send_header("Content-type", "text/html")
  25. self.end_headers()
  26. get = requests.get(url='https://api.ipify.org/')
  27. http_text = f' <!doctype html><html><head><meta charset= utf-8><body>IP-адрес: {get.text}<br>Лаптев А.А 703<br>Время: {datetime.now()}</body></html>'
  28. self.wfile.write(http_text.encode())
  29. except eror:
  30. self.send_error(400, f"File not found{self.path}")
  31. def main(server_class=HTTPServer, handler_class=HttpGethandler):
  32. server_address = ('localhost', 8000)
  33. httpd = server_class(server_address, handler_class)
  34. try:
  35. print("Start")
  36. httpd.serve_forever()
  37. except KeyboardInterrupt:
  38. httpd.server_close()
  39. print("stop")
  40. if __name__ == '__main__':
  41. main()