Advertisement
Not a member of Pastebin yet?
Sign Up,
it unlocks many cool features!
- import socket
- import sys
- import os
- PORT = 8800
- CHUNK_SIZE = 1024
- def main():
- if len(sys.argv) < 3:
- print('Usage: python3 client.py <IP|DNS> <PATH TO FILE>')
- sys.exit(0)
- serv_addr = sys.argv[1]
- file_path = sys.argv[2]
- sock = socket.socket(socket.AF_INET, socket.SOCK_STREAM)
- serv = (serv_addr, PORT)
- sock.connect(serv)
- try:
- file = open(file_path, "rb")
- except:
- print('File can not be opened!')
- sys.exit(-1)
- import time
- file_name = bytes(file.name, encoding='utf-8')
- sock.send(file_name)
- time.sleep(1)
- chunk = file.read(CHUNK_SIZE)
- sent_count = 0
- size = os.path.getsize(file_path)
- last = 0
- while chunk:
- sock.send(chunk)
- sent_count += len(chunk)
- pr = sent_count / size * 100
- if pr == 100 or (pr - last) > 5:
- print(f"File Transfer progres: {pr}%")
- last = pr
- chunk = file.read(CHUNK_SIZE)
- sock.close()
- if __name__ == "__main__":
- main()
Advertisement
Add Comment
Please, Sign In to add comment
Advertisement