python获取ip
时间: 2023-10-17 20:37:29 浏览: 160
要在Python中获取IP地址,您可以使用socket模块。以下是一个示例代码:
```python
import socket
hostname = socket.gethostname()
ip_address = socket.gethostbyname(hostname)
print(f"主机名:{hostname}")
print(f"IP地址:{ip_address}")
```
这段代码首先使用`socket.gethostname()`获取主机名,然后使用`socket.gethostbyname()`根据主机名获取IP地址。最后,将主机名和IP地址打印出来。
请注意,这种方法只能获取到本地主机的IP地址。如果您想要获取外部IP地址,可以使用第三方服务提供商的API或访问特定的网站来获取。
相关问题
python 获取ip地址
你可以使用 Python 中的 socket 模块来获取本机的 IP 地址。具体代码如下:
```python
import socket
# 获取本机IP地址
def get_ip_address():
# 创建 socket 对象
s = socket.socket(socket.AF_INET, socket.SOCK_DGRAM)
try:
# 连接外网地址
s.connect(('8.8.8.8', 80))
# 获取本机IP地址
ip = s.getsockname()[0]
except Exception as e:
print(e)
ip = ''
finally:
# 关闭 socket 连接
s.close()
return ip
```
这段代码中,我们创建了一个 UDP socket 连接到 Google 的 DNS 服务器 8.8.8.8,然后调用 getsockname() 方法获取本机的 IP 地址。注意,这种方法只能获取到本机连接外网的 IP 地址,如果是局域网内的 IP 地址需要使用其他方法获取。
python 获取ip
你可以使用Python中的socket库来获取本地IP地址。下面是一个简单的示例代码:
```python
import socket
def get_ip():
# 创建一个UDP套接字
sock = socket.socket(socket.AF_INET, socket.SOCK_DGRAM)
try:
# 连接到一个公共的域名(例如www.baidu.com)
sock.connect(('www.baidu.com', 80))
# 获取本地IP地址
ip = sock.getsockname()[0]
finally:
sock.close()
return ip
# 调用函数获取本地IP地址
ip_address = get_ip()
print("本地IP地址:", ip_address)
```
这个代码通过创建一个UDP套接字,连接到一个公共的域名(例如百度),然后获取本地IP地址。请注意,这种方法仅适用于获取本地IP地址,而不是获取外部IP地址。如果你想获取外部IP地址,你需要使用一些网络服务或API。
阅读全文