Python GUI 更改本地 IP 地址 - 简易脚本
这里提供一个简单的 Python 脚本,使用 Tkinter 库实现 GUI 界面更改本机 IP 地址:
import tkinter as tk
import subprocess
class App:
def __init__(self, master):
self.master = master
master.title('更改 IP 地址')
# IP 地址标签和输入框
self.ip_label = tk.Label(master, text='IP 地址:')
self.ip_label.grid(row=0, column=0)
self.ip_entry = tk.Entry(master)
self.ip_entry.grid(row=0, column=1)
# 子网掩码标签和输入框
self.mask_label = tk.Label(master, text='子网掩码:')
self.mask_label.grid(row=1, column=0)
self.mask_entry = tk.Entry(master)
self.mask_entry.grid(row=1, column=1)
# 网关标签和输入框
self.gateway_label = tk.Label(master, text='网关:')
self.gateway_label.grid(row=2, column=0)
self.gateway_entry = tk.Entry(master)
self.gateway_entry.grid(row=2, column=1)
# DNS 标签和输入框
self.dns_label = tk.Label(master, text='DNS:')
self.dns_label.grid(row=3, column=0)
self.dns_entry = tk.Entry(master)
self.dns_entry.grid(row=3, column=1)
# 应用按钮
self.apply_button = tk.Button(master, text='应用', command=self.apply_ip)
self.apply_button.grid(row=4, column=0)
# 重置按钮
self.reset_button = tk.Button(master, text='重置', command=self.reset_ip)
self.reset_button.grid(row=4, column=1)
def apply_ip(self):
# 获取输入框的值
ip = self.ip_entry.get()
mask = self.mask_entry.get()
gateway = self.gateway_entry.get()
dns = self.dns_entry.get()
# 使用 subprocess 模块调用命令行更改 IP 地址
subprocess.call(['netsh', 'interface', 'ip', 'set', 'address', 'name="本地连接"', 'source=static', 'addr=' + ip, 'mask=' + mask, 'gateway=' + gateway])
subprocess.call(['netsh', 'interface', 'ip', 'set', 'dns', 'name="本地连接"', 'source=static', 'addr=' + dns])
# 弹出提示框
tk.messagebox.showinfo('提示', 'IP 地址已更改!')
def reset_ip(self):
# 使用 subprocess 模块调用命令行重置 IP 地址
subprocess.call(['netsh', 'interface', 'ip', 'set', 'address', 'name="本地连接"', 'source=dhcp'])
subprocess.call(['netsh', 'interface', 'ip', 'set', 'dns', 'name="本地连接"', 'source=dhcp'])
# 弹出提示框
tk.messagebox.showinfo('提示', 'IP 地址已重置!')
root = tk.Tk()
app = App(root)
root.mainloop()
说明:
- 使用 Tkinter 库创建 GUI 界面,包括 IP 地址、子网掩码、网关和 DNS 的输入框和应用、重置按钮。
- 应用按钮点击后,获取输入框的值,使用 subprocess 模块调用命令行更改 IP 地址和 DNS,弹出提示框。
- 重置按钮点击后,使用 subprocess 模块调用命令行重置 IP 地址和 DNS,弹出提示框。
注意: 本脚本需要在 Windows 系统上运行。
原文地址: https://www.cveoy.top/t/topic/jCSQ 著作权归作者所有。请勿转载和采集!