Linux下通过python获取本机ip方法示例


Posted in Python onSeptember 06, 2019

下面介绍在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')

下面是运行截图

Linux下通过python获取本机ip方法示例

参考文献

[1].http://bbs.csdn.net/topics/190130360

总结

以上就是这篇文章的全部内容了,希望本文的内容对大家的学习或者工作具有一定的参考学习价值,谢谢大家对三水点靠木的支持。

Python 相关文章推荐
python抓取网页中的图片示例
Feb 28 Python
一步步解析Python斗牛游戏的概率
Feb 12 Python
Python自定义函数定义,参数,调用代码解析
Dec 27 Python
python opencv之分水岭算法示例
Feb 24 Python
Python实现的寻找前5个默尼森数算法示例
Mar 25 Python
5款Python程序员高频使用开发工具推荐
Apr 10 Python
python实现图像检索的三种(直方图/OpenCV/哈希法)
Aug 08 Python
python集合常见运算案例解析
Oct 17 Python
python 实现绘制整齐的表格
Nov 18 Python
解决Python图形界面中设置尺寸的问题
Mar 05 Python
使用Django xadmin 实现修改时间选择器为不可输入状态
Mar 30 Python
Softmax函数原理及Python实现过程解析
May 22 Python
django-crontab 定时执行任务方法的实现
Sep 06 #Python
Python使用matplotlib实现交换式图形显示功能示例
Sep 06 #Python
python自动发微信监控报警
Sep 06 #Python
Python使用Slider组件实现调整曲线参数功能示例
Sep 06 #Python
Python scipy的二维图像卷积运算与图像模糊处理操作示例
Sep 06 #Python
Python数学形态学实例分析
Sep 06 #Python
Python统计分析模块statistics用法示例
Sep 06 #Python
You might like
php字符串截取问题
2006/11/28 PHP
URL Rewrite的设置方法
2007/01/02 PHP
PHP与C#分别格式化文件大小的代码
2011/05/14 PHP
PHP序列号生成函数和字符串替换函数代码
2012/06/07 PHP
比较简单的百度网盘文件直链PHP代码
2013/03/24 PHP
php基于GD库画五星红旗的方法
2015/02/24 PHP
Thinkphp无限级分类代码
2015/11/11 PHP
PHP开发之归档格式phar文件概念与用法详解【创建,使用,解包还原提取】
2017/11/17 PHP
jquery判断checkbox(复选框)是否被选中的代码
2010/10/20 Javascript
解决json日期格式问题的3种方法
2014/02/02 Javascript
JavaScript对Cookie进行读写操作实例
2015/07/25 Javascript
使用jquery获取url以及jquery获取url参数的实现方法
2016/05/25 Javascript
jQuery+HTML5实现弹出创意搜索框层
2016/12/29 Javascript
微信小程序 中wx.chooseAddress(OBJECT)实例详解
2017/03/31 Javascript
webpack 2的react开发配置实例代码
2017/07/28 Javascript
vue复合组件实现注册表单功能
2017/11/06 Javascript
axios拦截设置和错误处理方法
2018/03/05 Javascript
Vue使用mixins实现压缩图片代码
2018/03/14 Javascript
JS实现仿微信支付弹窗功能
2018/06/25 Javascript
JavaScript实用代码小技巧
2018/08/23 Javascript
Layui 动态禁止select下拉的例子
2019/09/03 Javascript
[01:37]DOTA2超级联赛专访ChuaN 传奇般的电竞之路
2013/06/19 DOTA
python爬虫的数据库连接问题【推荐】
2018/06/25 Python
Python比较配置文件的方法实例详解
2019/06/06 Python
pytorch中如何使用DataLoader对数据集进行批处理的方法
2019/08/06 Python
docker-py 用Python调用Docker接口的方法
2019/08/30 Python
Django使用中间件解决前后端同源策略问题
2019/09/02 Python
加拿大最大的书店:Indigo
2017/01/01 全球购物
荣耀俄罗斯官网:HONOR俄罗斯
2020/10/31 全球购物
Java里面如何创建一个内部类的实例
2015/01/19 面试题
小学教师办公室制度
2014/02/03 职场文书
高三上学期学习自我评价
2014/04/23 职场文书
班组建设经验交流材料
2014/05/12 职场文书
2015年学校教务处工作总结
2015/05/11 职场文书
2016年清明节网上祭英烈活动总结
2016/04/01 职场文书
创业计划书之韩国烧烤店
2019/09/19 职场文书