Linux下通过python获取本机ip方法示例
作者:雪峰流云 时间:2023-02-18 05:56:15
下面介绍在Linux上利用python获取本机ip的方法.
经过网上调查, 发现大致有两种方法, 一种是调用shell脚本,另一种是利用python中的socket等模块来得到,下面是这两种方法的源码:
#!/usr/bin/env python
#encoding: utf-8
#description: get local ip address
import os
import socket, fcntl, struct
def get_ip():
#注意外围使用双引号而非单引号,并且假设默认是第一个网卡,特殊环境请适当修改代码
out = os.popen("ifconfig | grep 'inet addr:' | grep -v '127.0.0.1' | cut -d: -f2 | awk '{print $1}' | head -1").read()
print out
#另一种方法, 只需要指定网卡接口, 我更倾向于这个方法
def get_ip2(ifname):
s = socket.socket(socket.AF_INET, socket.SOCK_DGRAM)
return socket.inet_ntoa(fcntl.ioctl(s.fileno(), 0x8915, struct.pack('256s', ifname[:15]))[20:24])
if __name__ == '__main__':
get_ip()
print get_ip2('eth0')
print get_ip2('lo')
下面是运行截图
参考文献
[1].http://bbs.csdn.net/topics/190130360
来源:https://blog.csdn.net/tao_627/article/details/49967185
标签:python,本机,ip
0
投稿
猜你喜欢
教你怎么用Python实现多路径迷宫
2022-03-11 15:07:52
JavaScript中的ArrayBuffer详细介绍
2024-04-19 11:02:13
Python3.9.1中使用match方法详解
2023-09-14 09:51:21
Pytorch maxpool的ceil_mode用法
2023-03-20 13:28:05
如何在ADO服务器端利用好缓存技术?
2010-06-17 12:49:00
深入分析javascript中console命令
2024-06-05 09:34:26
解决PyCharm 中写 Turtle代码没提示以及标黄的问题
2023-05-12 09:08:30
微信小程序实现多文件或者图片上传
2024-04-29 14:06:10
Python绘制词云图之可视化神器pyecharts的方法
2022-12-08 14:38:44
Python shapefile转GeoJson的2种方式实例
2023-02-20 01:07:52
实现Python3数组旋转的3种算法实例
2021-11-12 04:23:10
python机器学习之随机森林(七)
2023-10-20 00:25:13
PHP程序员玩转Linux系列 备份还原MySQL
2023-11-15 07:39:28
python密码学简单替代密码解密及测试教程
2023-09-30 08:13:00
在程序中压缩sql server2000的数据库备份文件的代码
2024-01-23 23:01:35
解读golang plugin热更新尝试
2024-05-22 10:09:28
python中的测试框架
2023-02-16 03:59:08
MSSQL2005在networkservice权限运行附加数据库报(Microsoft SQL Server,错误: 5120)
2024-01-23 00:09:51
python MultipartEncoder传输zip文件实例
2022-04-20 07:22:57
php网络安全中命令执行漏洞的产生及本质探究
2023-05-30 05:34:31