自动连网
以下为豆包的回答,亲测可用
Python
import subprocess
import time
def ping_host(host="8.8.8.8"):
try:
# 执行 ping 命令
result = subprocess.run(['ping', '-c', '1', host], stdout=subprocess.PIPE, stderr=subprocess.PIPE)
return result.returncode == 0
except Exception as e:
print(f"Ping 时发生错误: {e}")
return False
def connect_to_wifi(ssid, password):
try:
# 使用 nmcli 命令连接 Wi-Fi
subprocess.run(['nmcli', 'device', 'wifi', 'connect', ssid, 'password', password], check=True)
print(f"已成功连接到 {ssid}")
except subprocess.CalledProcessError as e:
print(f"连接到 {ssid} 时出错: {e}")
def main(ssid, password):
while True:
if not ping_host():
print("网络连接已断开,尝试重新连接...")
connect_to_wifi(ssid, password)
time.sleep(10) # 每 10 秒检查一次网络连接
if __name__ == "__main__":
# 请替换为你的 Wi-Fi 名称和密码
wifi_ssid = "Your_WiFi_SSID"
wifi_password = "Your_WiFi_Password"
main(wifi_ssid, wifi_password)