Tengo hechos 2 botones, uno que empieza a capturar paquetes, y otro para que detenga la captura de paquetes, el primero funciona bien, si en el sniff le meto o un tiempo de captura, o un numero determinado de paquetes a capturar, pero si no le pongo parametros, se pega capturando hasta que lo cierro.
Mi pregunta es:
Que le puedo poner a la función detener, para que se pare la captura de paquetes?
PD: No sé si también habría que ponerle algo a la función de capturar, hasta el momento he intentado con excepciones, pero no consigo que funcione.
PD2: Si alguno cree que con otra librería gráfica me iría mejor, que lo comente también, estoy dispuesto a sugerencias.
Os dejo por aquí el código para ver si me podéis orientar un poco.
Código:
Un saludo. #!/usr/bin/python #-*-coding: utf-8-*- import sys from Tkinter import * from scapy.all import * import os import netifaces # Funciones # ---------------------------------------------------------------------------------------------------------------------- def captura(): try: a=sniff() except SystemExit: print("Programa finalizado") a.show() wrpcap("prueba_boton.pcap", a) def detener(): sys.exit() def ver_interfaz_seleccionada(interfaces): print() #----------------------------------------------------------------------------------------------------------------------- # Crear ventana principal ventana = Tk() ventana.geometry("1920x1080+0+0") ventana.title("APP") # Agregando una imagen a un boton imgCapturar = PhotoImage(file="images.png") boton_captura = Button(ventana, image=imgCapturar, command=captura, height=50, width=50).place(x=0, y=0) # Agregando una imagen a un boton imgStop = PhotoImage(file="2.gif") boton_stop = Button(ventana, image=imgStop, command=detener, height=50, width=50).place(x=50, y=0) ventana.mainloop()