laba1.py 2.3 KB

1234567891011121314151617181920212223242526272829303132333435363738394041424344454647484950515253545556575859606162
  1. from http.server import HTTPServer, BaseHTTPRequestHandler
  2. from datetime import datetime
  3. import re
  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>Main</title></head>
  13. <body>Главная страница<br></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>Info student</title></head>
  21. <body>Timofeeva Darya Dmitrievna gr 701(3).</body></html>"""
  22. self.wfile.write(http_text.encode())
  23. if self.path.endswith("/Status"):
  24. self.send_response(200)
  25. add=self.client_address[0]
  26. add=re.sub('[.]([0-9]{1,3})', ".x", add, 2)
  27. time=datetime.now().strftime("%Y-%m-%d %I:%M:%S%p")
  28. self.send_header("Content-type", "text/html")
  29. self.end_headers()
  30. http_text = f"<html><head><meta charset='utf-8'>" \
  31. f"<title>Status</title></head>" \
  32. f"<body>Ваш IP: {add}<br>" \
  33. f"ФИО: Timofeeva Darya Dmitrievnа <br>" \
  34. f"Дата: {time}</body></html>"
  35. self.wfile.write(http_text.encode())
  36. except IOError:
  37. self.send_error(400,f"File not found{self.path}")
  38. def main(server_class=HTTPServer,handler_class=HttpGetHandler):
  39. server_address = ('localhost',8000)
  40. httpd = server_class(server_address,handler_class)
  41. try:
  42. print("Starting the server!")
  43. httpd.serve_forever()
  44. except KeyboardInterrupt:
  45. httpd.server_close()
  46. print("The server is stopped")
  47. if __name__ == '__main__':
  48. main()