Получение SSID WLAN: методы и примеры кода на Python, Java и C#

На английском языке «WLAN» означает «Беспроводная локальная сеть». Это тип беспроводной сети, которая позволяет устройствам подключаться и взаимодействовать друг с другом с помощью радиоволн в пределах ограниченной территории, например дома, офиса или кампуса.

Вот несколько методов на разных языках программирования, демонстрирующих, как можно получить SSID WLAN (идентификатор набора служб) с помощью кода:

  1. Python:

    import subprocess
    def get_wlan_ssid():
    results = subprocess.check_output(["netsh", "wlan", "show", "interfaces"]).decode("utf-8")
    ssid_line = [line for line in results.split("\n") if "SSID" in line]
    if ssid_line:
        ssid = ssid_line[0].split(":")[1].strip()
        return ssid
    else:
        return "SSID not found"
    print(get_wlan_ssid())
  2. Java:

    import java.io.BufferedReader;
    import java.io.IOException;
    import java.io.InputStreamReader;
    public class WLANUtil {
    public static void main(String[] args) {
        String ssid = getWlanSSID();
        System.out.println(ssid);
    }
    public static String getWlanSSID() {
        try {
            ProcessBuilder processBuilder = new ProcessBuilder("netsh", "wlan", "show", "interfaces");
            Process process = processBuilder.start();
            BufferedReader reader = new BufferedReader(new InputStreamReader(process.getInputStream()));
            String line;
            while ((line = reader.readLine()) != null) {
                if (line.contains("SSID")) {
                    String[] parts = line.split(":");
                    if (parts.length > 1) {
                        return parts[1].trim();
                    }
                }
            }
        } catch (IOException e) {
            e.printStackTrace();
        }
        return "SSID not found";
    }
    }
  3. C#:

    using System;
    using System.Diagnostics;
    public class WLANUtil
    {
    public static void Main(string[] args)
    {
        string ssid = GetWlanSSID();
        Console.WriteLine(ssid);
    }
    public static string GetWlanSSID()
    {
        Process process = new Process();
        ProcessStartInfo startInfo = new ProcessStartInfo
        {
            FileName = "netsh",
            Arguments = "wlan show interfaces",
            RedirectStandardOutput = true,
            UseShellExecute = false,
            CreateNoWindow = true
        };
        process.StartInfo = startInfo;
        process.Start();
        string output = process.StandardOutput.ReadToEnd();
        process.WaitForExit();
        string[] lines = output.Split(new[] { Environment.NewLine }, StringSplitOptions.RemoveEmptyEntries);
        foreach (string line in lines)
        {
            if (line.Contains("SSID"))
            {
                string[] parts = line.Split(':');
                if (parts.Length > 1)
                {
                    return parts[1].Trim();
                }
            }
        }
        return "SSID not found";
    }
    }