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常见文件操作的函数示例代码
Nov 15 Python
Python里隐藏的“禅”
Jun 16 Python
python中pass语句用法实例分析
Apr 30 Python
在Python中操作字典之update()方法的使用
May 22 Python
Python 正则表达式入门(中级篇)
Dec 07 Python
Python基于多线程实现ping扫描功能示例
Jul 23 Python
Python反爬虫技术之防止IP地址被封杀的讲解
Jan 09 Python
基于python实现高速视频传输程序
May 05 Python
python中sort和sorted排序的实例方法
Aug 26 Python
python如何写try语句
Jul 14 Python
Django中session进行权限管理的使用
Jul 09 Python
Python中的socket网络模块介绍
Jul 23 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
全国FM电台频率大全 - 8 黑龙江省
2020/03/11 无线电
解析php多线程下载远程多个文件
2013/06/25 PHP
指定js可访问其它域名的cookie的方法
2007/09/18 Javascript
jQuery 加上最后自己的验证
2009/11/04 Javascript
javascript中的delete使用详解
2013/04/11 Javascript
使用js实现雪花飘落效果
2013/08/26 Javascript
JS JSON对象转为字符串的简单实现方法
2013/11/18 Javascript
从js向Action传中文参数出现乱码问题的解决方法
2013/12/29 Javascript
javascript 闭包详解
2015/02/15 Javascript
JS实现页面数据无限加载
2016/09/13 Javascript
探讨跨域请求资源的几种方式(总结)
2016/12/02 Javascript
输入框点击时边框变色效果的实现方法
2016/12/26 Javascript
整理关于Bootstrap过渡动画的慕课笔记
2017/03/29 Javascript
基于JavaScript实现多级菜单效果
2017/07/25 Javascript
JavaScript封装的常用工具类库bee.js用法详解【经典类库】
2018/09/03 Javascript
浅析微信扫码登录原理(小结)
2018/10/29 Javascript
使用JQuery自动完成插件Auto Complete详解
2019/06/18 jQuery
详解JS深拷贝与浅拷贝
2020/08/04 Javascript
[02:25]DOTA2英雄基础教程 虚空假面
2014/01/02 DOTA
[03:13]DOTA2-DPC中国联赛1月25日Recap集锦
2021/03/11 DOTA
Python Nose框架编写测试用例方法
2017/10/26 Python
python使用pygame模块实现坦克大战游戏
2020/03/25 Python
适合Python初学者的一些编程技巧
2020/02/12 Python
浅谈tensorflow模型保存为pb的各种姿势
2020/05/25 Python
Python爬虫获取页面所有URL链接过程详解
2020/06/04 Python
Python小白垃圾回收机制入门
2020/06/09 Python
python上selenium的弹框操作实现
2020/07/13 Python
python高级特性简介
2020/08/13 Python
HTML5新增的Css选择器、伪类介绍
2013/08/07 HTML / CSS
美国著名的女性内衣零售商:Frederick’s of Hollywood
2018/02/24 全球购物
大学生先进事迹材料
2014/02/16 职场文书
纪念九一八事变演讲稿:牢记历史,捍卫主权
2014/09/14 职场文书
房屋买卖授权委托书
2014/09/27 职场文书
党支部群众路线整改措施思想汇报
2014/10/10 职场文书
残联2016年全国助残日活动总结
2016/04/01 职场文书
nginx常用命令放入shell脚本详解
2021/03/31 Servers