Main.py 2.0 KB

1234567891011121314151617181920212223242526272829303132333435363738394041424344454647484950515253545556575859606162
  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("/OK"):
  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>Простой HTTP-сервер.</title></head>
  13. <body>Главная страница.</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>Информация</title></head></html>
  21. <body>Смаков Роман Маратович 701(3) группа </body></html>"""
  22. self.wfile.write(http_text.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(url='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(http_text.encode())
  30. except IOError:
  31. self.send_error(400, f"File not 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("Есть коннект")
  37. httpd.serve_forever()
  38. except KeyboardInterrupt:
  39. httpd.server_close()
  40. print("Сервер остановлен")
  41. if __name__ == '__main__':
  42. main()