Advertisement
Guest User

NCJ-Server.py

a guest
Dec 7th, 2019
116
0
Never
Not a member of Pastebin yet? Sign Up, it unlocks many cool features!
Python 1.33 KB | None | 0 0
  1. #!/usr/bin/python3.6
  2.  
  3. import socket
  4. import sys
  5.  
  6. HOST = "127.0.0.1"
  7. PORT = None
  8.  
  9. def start_server():
  10.  
  11.     with socket.socket(socket.AF_INET, socket.SOCK_STREAM) as sock:
  12.         sock.bind((HOST, PORT))
  13.         sock.listen()
  14.  
  15.         print("Now listening on {}:{}".format(HOST, PORT ))
  16.  
  17.         try:
  18.             while True:
  19.                 conn, addr = sock.accept()
  20.  
  21.                 with conn:
  22.                     print("Connection from {}".format(addr))
  23.                     info = conn.recv(1024)
  24.                     parsed = info.decode().split(' ')
  25.                     if parsed[0] == "GET":
  26.                         filepath = parsed[1]
  27.                         print("Sending file from: {}".format(filepath))
  28.                         with open(filepath, "rb") as fp:
  29.                             data = fp.read()
  30.                             conn.sendall(data)
  31.                             print("Sent file.")
  32.         except KeyboardInterrupt:
  33.             print("Exiting. Goodbye")
  34.             exit(0)
  35.            
  36.  
  37. if __name__ == "__main__":
  38.     if len(sys.argv) < 2:
  39.         print("Please specify server port...\nExiting")
  40.         exit(1)
  41.     portStr = sys.argv[1]
  42.     try:
  43.         PORT = int(portStr)
  44.         start_server()
  45.     except Exception as e:
  46.         print(e)
  47.  
  48.  
  49. #https://realpython.com/python-sockets/
Advertisement
Add Comment
Please, Sign In to add comment
Advertisement