首页
学习
活动
专区
工具
TVP
发布
精选内容/技术社群/优惠产品,尽在小程序
立即前往

Python |有没有办法获取我的IP地址?

Python提供了多种方式来获取IP地址。以下是几种常用的方法:

  1. 使用socket库:可以使用socket库中的gethostname()和gethostbyname()函数来获取本机的IP地址。gethostname()函数返回主机名,gethostbyname()函数接受主机名作为参数,并返回对应的IP地址。
代码语言:txt
复制
import socket

hostname = socket.gethostname()
ip_address = socket.gethostbyname(hostname)

print("主机名:", hostname)
print("IP地址:", ip_address)
  1. 使用requests库:可以使用requests库发送一个GET请求到一个公开的IP地址查询API,获取本机的公网IP地址。
代码语言:txt
复制
import requests

response = requests.get("https://api.ipify.org?format=json")
ip_address = response.json()["ip"]

print("IP地址:", ip_address)
  1. 使用第三方库:还有一些第三方库可以用来获取IP地址,例如netifaces、ifaddr等。这些库提供了更多的灵活性和功能,可以获取本机的所有网络接口的IP地址。
代码语言:txt
复制
import netifaces

interfaces = netifaces.interfaces()
for interface in interfaces:
    addresses = netifaces.ifaddresses(interface)
    if netifaces.AF_INET in addresses:
        ip_address = addresses[netifaces.AF_INET][0]["addr"]
        print("接口:", interface)
        print("IP地址:", ip_address)

这些方法可以根据不同的需求选择使用。请注意,获取IP地址可能会受到网络环境和权限限制的影响。

页面内容是否对你有帮助?
有帮助
没帮助

相关·内容

领券