python获取本机ip
时间: 2023-08-23 13:03:49 浏览: 98
你可以使用以下Python代码来获取本机IP地址:
```python
import socket
# 获取本机IP地址
def get_local_ip():
ip = ''
try:
# 获取本机主机名
hostname = socket.gethostname()
# 获取本机IP地址
ip = socket.gethostbyname(hostname)
except:
pass
return ip
```
调用 `get_local_ip()` 函数即可获取本机IP地址。
相关问题
利用python获取本机ip
在Python中,你可以通过多种模块来获取本机的IP地址。以下是几种常用的方法:
1. **`socket`** 模块:这个模块提供网络通信功能,可以用于查找主机名到IP的映射。例如:
```python
import socket
def get_ip():
s = socket.socket(socket.AF_INET, socket.SOCK_DGRAM)
try:
# 这里使用回环地址作为目标,这样不会发送实际的数据包
s.connect(('10.255.255.255', 1)) # 或者 'localhost'
ip = s.getsockname()[0]
except Exception:
ip = "127.0.0.1" # 如果连接失败,返回本地回环地址
finally:
s.close()
return ip
print(get_ip())
```
2. **`requests`** 库(如果安装了):如果你需要获取外部网络的IP,可以使用 `requests` 获取公共API的信息。
```python
import requests
def get_public_ip():
response = requests.get('https://api.ipify.org')
return response.text.strip()
print(get_public_ip())
```
注意,由于安全性和隐私原因,直接请求外部服务器获取IP可能会受到限制或有延迟。在生产环境中,建议使用前一种方法获取本地IP。
python 获取本机ip和mac
你可以使用 Python 的 socket 和 uuid 模块来获取本机的 IP 地址和 MAC 地址。
获取 IP 地址的代码示例:
```python
import socket
# 获取本机的 IP 地址
ip_address = socket.gethostbyname(socket.gethostname())
print(ip_address)
```
获取 MAC 地址的代码示例:
```python
import uuid
# 获取本机的 MAC 地址
mac_address = ':'.join(format(s, '02x') for s in uuid.getnode().to_bytes(6, 'big'))
print(mac_address)
```
需要注意的是,获取 MAC 地址的代码可能在 Windows 系统上无法正常运行。在 Linux 和 macOS 系统上则可以正常运行。
阅读全文