Одним из решений является уничтожение уже используемого порта и его повторное использование. Чтобы уничтожить определенный порт в Linux, используйте следующую команду:
sudo fuser -k Port_Number/tcp
Например: в вашем случае это будет выглядеть следующим образом:
sudo fuser -k 98/tcp
Но чтобы ответить на ваш вопрос, я думаю, что приведенный ниже код поможет вам найти все свободные порт TCP:
from contextlib import closing
import socket
for port in range(1, 8081):
with socket.socket(socket.AF_INET, socket.SOCK_STREAM) as sock:
res = sock.connect_ex(('localhost', port))
if res == 0:
print (port)