Когда я нажимаю кнопку, он подключается к моему серверу, чтобы получить файл, но после получения файла веб-страница не отвечает?
from socket import *
from tkinter import *
import re
import tkinter.messagebox
from tkinter import filedialog
def file():
s = socket(AF_INET,SOCK_DGRAM)
host ="192.168.2.199"
port = 9999
buf =4096
addr = (host,port)
file_name="csr"
ip = re.compile('(([2][5][0-5]\.)|([2][0-4][0-9]\.)|([0-1]?[0-9]?[0-9]\.)){3}'
+'(([2][5][0-5])|([2][0-4][0-9])|([0-1]?[0-9]?[0-9]))')
s.connect(addr)
s.send(file_name.encode())
data,addr = s.recvfrom(buf)
f = open(data.strip(),'wb')
print("File Opened")
data,addr = s.recvfrom(buf)
while True:
print('receiving data...')
data = s.recv(1024)
print('data=%s', (data))
if not data:
break
# write data to a file
f.write(data)
f.close()
print('Successfully get the file')
s.close()
print('connection closed')
window=Tk()
window.geometry('100x100')
Button(window,text=" \t getfile\t ",command=file).pack()
window.mainloop()
Я уже пробовал этот код, но каждый раз, когда это не так
Когда событие нажатия кнопки будет выполнено, оно перейдет к функции, которая получает файл csv
с сервера. Когда файл получен, веб-страница не отвечает, и я должен закрыть это и снова открыть его.