Как передать файл любого расширения на другой ПК по локальной сети?
я бы хотел создать программу для передачи файлов между несколькими ПК в локальной сети, при этом чтобы их вес не был ограничен, тоже самое касается и расширение файла. Но как это сделать я не знаю, пытался сделать через сокеты, но вышло не очень.
server
import socket
import sys
s = socket.socket()
s.bind(("localhost",9999))
s.listen(10)
while True:
sc, address = s.accept()
print(address)
i=1
f = open('file_'+ str(i)+".txt",'wb')
i=i+1
while (True):
l = sc.recv(1024)
while (l):
f.write(l)
l = sc.recv(1024)
f.close()
sc.close()
s.close()
client
import socket
import sys
s = socket.socket()
s.connect(("localhost",9999))
f = open ("text.txt", "rb")
l = f.read(1024)
while (l):
s.send(l)
l = f.read(1024)
s.close()
Ответы (1 шт):
Конечно можно самому писать велосипед через socket и побитно передавать данные, но есть протокол ftp(file transfer protocol) который позволяет как раз таки обмениваться файлами по сети. В python есть встроенная библиотека ftplib для создания ftp клиента. И на pypi есть pyftpdlib для создания ftp сервера. Почитав документацию можно сделать сервер и клиент, а т.к. идет работа с локальными ip, то по локальной сети это все будет работать отлично. Думаю в этом направлении больше шансов на успех.