Python获取本机IP、mac地址、计算机名

在 Python 中获取 IP地址和在 PHP 中获取存在一定的获取差异,但是在 PHP 中更简单。那再Python 中怎么获取呢?

1、Python 获取本机 MAC地址 :

import uuid
def get_mac_address(): 
    mac=uuid.UUID(int = uuid.getnode()).hex[-12:] 
    return ":".join([mac[e:e+2] for e in range(0,11,2)])

2、Python 获取 IP地址:

import socket
#获取本机电脑名
my_computer_name = socket.getfqdn(socket.gethostname(  ))
#获取本机ip
my_ip_addr = socket.gethostbyname(my_computer_name )
print(my_computer_name)
print(my_ip_addr)
结果为:

PC-20200927HAMT  #电脑名

192.168.2.103 #ip地址

但是注意这里获取的IP是内网IP

3、Linux下 使用下面的方法

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])
  
>>> get_ip_address('lo')
'127.0.0.1'
  
>>> get_ip_address('eth0')
'11.114.232.121'

亲测有效!!!!

最后编辑于
©著作权归作者所有,转载或内容合作请联系作者
平台声明:文章内容(如有图片或视频亦包括在内)由作者上传并发布,文章内容仅代表作者本人观点,简书系信息发布平台,仅提供信息存储服务。

推荐阅读更多精彩内容