专栏名称: python实战
Python实战
目录
相关文章推荐
51好读  ›  专栏  ›  python实战

python: 简单迅速搞搞桌面客户端,小黑窗拜拜啦

python实战  · 公众号  · Python  · 2023-03-23 17:25

正文

用python写好脚本,直接在终端运行,总觉得不得劲,有个GUI界面用鼠标点来点去才像样嘛........

python有不少GUI框架,例如Tkinter、wxPython、PyQt、Kivy等主流框架,也有上述框架再封装的框架,如EasyGUI、PyGUI、Pyforms等等。

然而人生苦短,做一些小工具何必杀鸡用牛刀呢。我选择傻瓜式PySimpleGUI。

做一个获取mac和ip的小工具

首先面向百度编程确定方案,查到获取mac和ip的方式有不少。

第一种,用uuid模块获取mac的,可能是玄学原因,我获取到的mac地址和直接敲 ipconfig /all 的不一样,该方案pass。

第二种,用wmi模块获取的,但我想同时获取网卡mac对应的ip,技术难度略高,该方案pass。

第三种,用netifaces模块,工具很强大,学习成本高,pass。

第四种,直接调用系统命令ipconfig,用字符串筛选,感觉不对,pass。

第五种,简单易行的psutil模块,运维使用,正合我意。

贴个代码:

def get_net_addr():

  macdict= dict()
  dic = psutil.net_if_addrs()
  for adapter in dic:
      sniclist = dic[adapter]
      iplist=[]

      for snic in sniclist:

          if '-' in snic.address and len(snic.address)==17:
              mac = snic.address
          if '.' in snic.address:
              iplist.append(snic.address)
          macdict[adapter] = mac,iplist

  return macdict

简简单单写个GUI







请到「今天看啥」查看全文