时间:2021-05-23
但是这种方式有一种弊端,那就是在Linux上可能不管用。
>>> import socket>>> name = socket.gethostname()>>> socket.gethostbyname(name) # 获取的默认是127.0.0.1,也就是回环地址'127.0.0.1'>>>如何解决呢?我们可以换一种方式,这种方式Windows和Linux是通用的。
import socket s = socket.socket(socket.AF_INET, socket.SOCK_DGRAM)s.connect(('8.8.8.8', 80))ip = s.getsockname()[0]print(ip) # 172.27.16.3# 此时就正确的获取了Linux机器的ip地址。# 另外,这种方式获取的一直是本机的ip地址。什么意思呢,我们以Windows为例。# 如果你挂了"威批恩",那么gethostbyname显示的就是你"威批恩"连接的地址,而当前这种方式显示的还是你本机的地址当然,还有一种更高级的方式,该方式只能在Linux中使用。
import socketimport fcntlimport struct def get_ip_address(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]) # 获取回环地址print(get_ip_address(b"lo")) # 127.0.0.1# 获取本地地址print(get_ip_address(b"eth0")) # 172.27.16.3当然我们除了获取本机的ip,还可以获取其它网站的ip。
import socket # 获取百度的ipprint(socket.gethostbyname("的映射记录"""以上就是如何用Python获取计算机名,ip地址,mac地址的详细内容,更多关于Python获取计算机名,ip地址,mac地址的资料请关注其它相关文章!
声明:本页内容来源网络,仅供用户参考;我单位不保证亦不表示资料全面及准确无误,也不保证亦不表示这些资料为最新信息,如因任何原因,本网内容或者用户因倚赖本网内容造成任何损失或损害,我单位将不会负任何法律责任。如涉及版权问题,请提交至online#300.cn邮箱联系删除。
JS获取计算机mac地址以及IP的实现方法复制代码代码如下://这两个是系统里的ActiveX插件用来获取ip以及物理地址if(objObject.IPEnab
本文实例讲述了python简单获取本机计算机名和IP地址的方法。分享给大家供大家参考。具体实现方法如下:方法一:>>>importsocket>>>hostna
/etc/hostname.eri0主机名和IP地址文件/etc/nodename本地计算机名文件/etc/defaultdomain域名文件/etc/defa
本文实例讲述了vc获取计算机名和ip地址的方法。分享给大家供大家参考。具体实现方法如下:#include#include#pragmacomment(lib,"
利用C#获取计算机名,IP,MAC信息,如下为源代码:复制代码代码如下:usingSystem;usingSystem.Collections.Generic;