Python: Acquire IP

 

def get_public_ip():
    from urllib.request import urlopen
    import re as r
    d = urlopen('http://checkip.dyndns.com').read()
    return r.compile(r'(\d+\.\d+\.\d+\.\d+)').search(d).group(1)


def get_private_ip():
    import socket
    s = socket.socket(family=socket.AF_INET, type=socket.SOCK_STREAM)
    s.settimeout(0)
    try:
        s.connect(('1.1.1.1', 53))
        return s.getsockname()[0]
    except TimeoutError:
        return '127.0.0.1'
    finally:
        s.close()


print(get_private_ip())

 

posted @ 2023-04-07 16:24  ascertain  阅读(16)  评论(0)    收藏  举报