python获取ip地址
时间: 2023-09-22 14:15:17 浏览: 89
获取本机IP地址:
```python
import socket
hostname = socket.gethostname()
ip_address = socket.gethostbyname(hostname)
print(ip_address)
```
获取公网IP地址:
```python
import requests
response = requests.get('https://api.ipify.org')
ip_address = response.text
print(ip_address)
```
注意:获取公网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。
阅读全文