背景:
在售后运维时,经常遇到不懂网络知识的客户。而这时又需要获取客户端(Windows系统)的本地网络信息。
作为初学python的新手,感觉可以写一个脚本自动使用客户端ipconfig。
环境:
我电脑上原来使用的是python3.11.0版本,但是在更新pip的时候一直提示pip不是内部命令,注册表也改了
使用python -m ensurepip命令修复也不成功,一大堆红色报错,看的我头都大了。看了官方的文档尝试修复还是失败了
scprit文件夹里也确实有了多个pip文件。但是还是一样的问题。所以没办法就直接更新到python3.11.2。不幸的时,问题还是没消失。
最后点击python3.11.2的安装包把python卸载重装了。之后使用就正常了(请教大佬)
python文件:
达到客户端运行ipconfig的效果,代码如下:
import os
import sys
#popen有输出,获取网卡信息到net
net=os.popen("ipconfig")
#使用with自动管理文件,使用utf-8编码
with open('out.txt','w',encoding='utf-8') as wen:
wen.writelines(net)
wen.write('\n')
保存文件到文件夹下,最好新建一个文件夹,后续文件夹要打包
运行net.py脚本文件后,会出现一个out.txt文本:
查看文本信息:
再用cmd验证一下:
信息一致
打包:
脚本文件写完后就要开始打包了
1. 使用cmd,输入pip install pyinstaller,安装python的打包组件
2. cmd切换到需要打包的文件夹下
我的文件夹在G:\自动获取网络信息脚本\windowsagent下(位置可以自行选择)
3. 再输入打包命令
pyinstaller -F -w net.py
在文件夹中就会出现一个dist文件夹
点进去就可以看到生成的.exe文件:
运行:
运行这个程序就可以得到本地网络信息out.txt文件了:
把dist文件夹压缩一下发给客户,让客户解压缩一下,运行net.exe,最后再让客户将这个文本发给你就可以啦。
目前已经在windows10和11上运行过了,可行!
有什么不足之处,也希望各位大佬指点一下