獲取本機局域網ip和出口ip

import socket import requests class GetLocalHost: def get(self): with socket.socket(socket.AF_INET, socket.SOCK_DGRAM) as s: s.connect(('8.8.8.8', 80)) ip = s.getsockname()[0] return ip class GetExportIp: def get(self): ip = requests.get('https://checkip.amazonaws.com').text.strip() return ip IP_TYPE_DICT = { "local": GetLocalHost, "export": GetExportIp } def get_ip(type): func = IP_TYPE_DICT.get(type, None) if not func: raise Exception(f'type:{type}, 參數錯誤') return func().get() if __name__ == '__main__': ip = get_ip('local') print(ip)
發表評論
所有評論
還沒有人評論,想成為第一個評論的人麼? 請在上方評論欄輸入並且點擊發布.
相關文章