您必须将所有代码sc, address = s.accept()
从上到下sc.close()
放入另一个循环,否则服务器将在收到第一个文件后立即终止。它不会崩溃,脚本刚刚完成。
import socket
import sys
s = socket.socket()
s.bind(("localhost",9999))
s.listen(10) # Accepts up to 10 connections.
while True:
sc, address = s.accept()
print address
i=1
f = open('file_'+ str(i)+".pdf",'wb') #open in binary
i=i+1
while (True):
# receive data and write it to file
l = sc.recv(1024)
while (l):
f.write(l)
l = sc.recv(1024)
f.close()
sc.close()
s.close()
请注意,这s.listen(10)
意味着“将最大接受速率设置为10个连接”,而不是“在10个连接后停止”。