|
|
|
import os |
|
import socket |
|
import time |
|
import streamlit as st |
|
|
|
|
|
sock = socket.socket(socket.AF_INET, socket.SOCK_STREAM) |
|
sock.bind((socket.gethostname(), 40000)) |
|
sock.listen(5) |
|
print("Host Name: ", sock.getsockname()) |
|
|
|
|
|
|
|
st.write("Host Name and Port Number", sock.getsockname()) |
|
|
|
|
|
with st.spinner('Searching For Receiver...'): |
|
client, addr = sock.accept() |
|
|
|
|
|
file_name = st.text_input("Enter your file Path👇 ",) |
|
st.write(file_name) |
|
if file_name: |
|
|
|
file_size = os.path.getsize(file_name) |
|
|
|
|
|
client.send(file_name.encode()) |
|
client.send(str(file_size).encode()) |
|
|
|
|
|
with open(file_name, "rb") as file: |
|
c = 0 |
|
|
|
start_time = time.time() |
|
|
|
|
|
while c <= file_size: |
|
data = file.read(1024) |
|
if not (data): |
|
break |
|
client.sendall(data) |
|
c += len(data) |
|
|
|
|
|
end_time = time.time() |
|
|
|
st.write("File Transfer Complete.Total time: ", end_time - start_time) |
|
sock.close() |
|
|
|
|