python获取本机所有IP地址的方法
本文实例为大家分享了python获取本机所有IP地址的具体代码,供大家参考,具体内容如下
import socket
# 查看当前主机名
print('当前主机名称为 : ' + socket.gethostname())
# 根据主机名称获取当前IP
print('当前主机的IP为: ' + socket.gethostbyname(socket.gethostname()))
# Mac下上述方法均返回127.0.0.1
# 通过使用socket中的getaddrinfo中的函数获取真真的IP
# 下方代码为获取当前主机IPV4 和IPV6的所有IP地址(所有系统均通用)
addrs = socket.getaddrinfo(socket.gethostname(),None)
for item in addrs:
print(item)
# 仅获取当前IPV4地址
print('当前主机IPV4地址为:' + [item[4][0] for item in addrs if ':' not in item[4][0]][0])
# 同上仅获取当前IPV4地址
for item in addrs:
if ':' not in item[4][0]:
print('当前主机IPV4地址为:' + item[4][0])
break
运行结果

以上就是本文的全部内容,希望对大家的学习有所帮助,也希望大家多多支持我们。
相关推荐
-
python 获取本机ip地址的两个方法
第一种: 复制代码 代码如下: import socket import fcntl import struct def get_ip_address(ifname): s = socket.socket(socket.AF_INET, socket.SOCK_DGRAM) return socket.inet_ntoa(fcntl.ioctl( s.fileno(), 0x8915, # SIOCGIFADDR struct.pack('256s', ifname[:15]) )[20:24]
-
Python获取Linux系统下的本机IP地址代码分享
有时候使用到获取本机IP,就采用以下方式进行. 复制代码 代码如下: #!/usr/bin/python import socket import struct import fcntl def getip(ethname): s=socket.socket(socket.AF_INET, socket.SOCK_DGRAM) return socket.inet_ntoa(fcntl.ioctl(s.fileno(), 0X8915, struct.pack('256s', e
-
python在windows和linux下获得本机本地ip地址方法小结
本文实例总结了python在windows和linux下获得本机本地ip地址方法.分享给大家供大家参考.具体分析如下: python的socket包含了丰富的函数和方法可以获得本机的ip地址信息,socket对象的gethostbyname方法可以根据主机名获得本机ip地址,socket对象的gethostbyname_ex方法可以获得本机所有ip地址列表 第一种方法:通过socket.gethostbyname方法获得 import socket localIP = socket.gethos
-
Python获取本机所有网卡ip,掩码和广播地址实例代码
本文主要研究的是使用Python获取本机所有网卡ip,掩码和广播地址,分享了相关的实例代码,具体介绍如下. 搜了一天,竟然没找到一段合适的代码来获取机器中所有网卡的ip,掩码和广播地址,大部分都是用socket,但是socket通常返回的要不就是内网地址,要不就是公网地址,不能够找到所有地址,真的太忧桑了,决定自己通过ifconfig或ipconfig的返回信息,一步步地过滤了.这次的代码主要用到了正则表达式和subprocess模块,而且为了兼容所有平台(win,linux和mac),也用到了
-
python基础教程之获取本机ip数据包示例
这几天用到了raw socket,用python写了些demo程序,这里记录下. 首先我们看一个简单的sniffer程序: 复制代码 代码如下: #! /usr/bin/python# code for linuximport socket#s = socket.socket(socket.AF_INET, socket.SOCK_RAW, socket.IPPROTO_UDP)s = socket.socket(socket.AF_INET, socket.SOCK_RAW, socket.I
-
python获取本机mac地址和ip地址的方法
本文实例讲述了python获取本机mac地址和ip地址的方法.分享给大家供大家参考.具体如下: import sys, socket def getipaddrs(hostname): result = socket.getaddrinfo(hostname,None,0,socket.SOCK_STREAM) return [x[4][0] for x in result] # the name of the local machine hostname = socket.gethostnam
-
python简单获取本机计算机名和IP地址的方法
本文实例讲述了python简单获取本机计算机名和IP地址的方法.分享给大家供大家参考.具体实现方法如下: 方法一: >>> import socket >>> hostname = socket.gethostname() >>> print hostname china-43226208c >>>ip = socket.gethostbyname(hostname) >>>print ip 192.168.3.19
-
Linux下通过python获取本机ip方法示例
下面介绍在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(): #注意外围使用双引号而非单引号,并且假设默
-
python获取本机外网ip的方法
本文实例讲述了python获取本机外网ip的方法.分享给大家供大家参考.具体如下: python从显示ip地址的网站获取本机外网ip,这段python代码抓取网站上的ip地址信息 import urllib import re print "we will try to open this url, in order to get IP Address" url = "http://checkip.dyndns.org" print url request = ur
-
python在Windows8下获取本机ip地址的方法
本文实例讲述了python在Windows8下获取本机ip地址的方法.分享给大家供大家参考.具体实现方法如下: import socket hostname = socket.gethostname() IPinfo = socket.gethostbyname_ex(hostname) LocalIP = IPinfo[2][2] print LocalIP 希望本文所述对大家的Python程序设计有所帮助.
随机推荐
- angular directive的简单使用总结
- JavaScript过滤字符串中的中文与空格方法汇总
- 用反编译软件去迅雷广告的图文方法
- javascript中不提供sleep功能如何实现这个功能
- Python的Flask框架应用调用Redis队列数据的方法
- 详解JSP中的语句对象Statement操作MySQL的使用实例
- 睡五分钟等于六钟头的方法(熬夜站长必看)
- Java实现的zip压缩及解压缩工具类示例
- C++结构体struct和类class区别详解
- vue实现通讯录功能
- 前端axios下载excel文件(二进制)的处理方法
- 关于Vue Router中路由守卫的应用及在全局导航守卫中检查元字段的方法
- Webstorm2016使用技巧(SVN插件使用)
- 基于Vue+ElementUI的省市区地址选择通用组件
- Python如何使用turtle库绘制图形
- Recycleview实现无限自动轮播
- Python高并发解决方案实现过程详解
- 解决SpringBoot使用devtools导致的类型转换异常问题
- Java Set集合去重的原理及实现
- 手把手教你AspNetCore WebApi数据验证的实现
