2016-05-17 55 views
0

我使用这个优秀的答案,找到蟒蛇自由港: https://stackoverflow.com/a/1365284/1467402选择一个空闲的端口号,但要避免1特定端口号

我想这个方法来接我的任何空闲端口,除了一个号码。 也就是说,我想为8000以外的任何自由端口,因为我为我的应用程序保存它。

这可能使用这种方法吗?

这是我的代码:

def get_free_port(): 
    import socket 
    s = socket.socket(socket.AF_INET, socket.SOCK_STREAM) 
    s.bind(("",0)) 
    free_port = s.getsockname()[1] 
    s.close 
    return free_port 

感谢

+1

有点破解,但绑定到8000,找到一个自由端口,然后关闭8000连接? – David

+0

谢谢,我想这是最简单的解决方案:) – orizis

回答

0

一个黑客一点,但有关绑定到8000,找到一个空闲端口,然后关闭8000连接什么? - 大卫

+1

嗨,我没有选择这种方法,因为我不想为我的目的绑定和解除绑定端口。最终我只是检查了端口绑定是否是我想要避免的,如果是这样,我再次尝试。还没找到更好的... – orizis