我在编写iwconfig时如何获得ESSID和Access Point

时间:2015-04-07 13:02:57

标签: linux python-2.7 networking

我写了iwconfig所以我可以让他知道我的lan ESSID和mac a point,我想恢复他的两个字段以便在脚本中使用我可以在第一行,但是我不能拥有我想要。

如何ubuntu我vaoir认为valeus ESSID和接入点

wlan0 IEEE 802.11bgn ESSID:" Home" 模式:管理频率:2.437 GHz接入点:00:03:B6:K9:L1:9E

我需要帮助。感谢。

尝试:

  proc = Popen(['iwconfig'], stdout=PIPE, stderr=DN)
  print "try de iwconfig %s"%proc

除了OSError:

  sys.exit("Could not execute iwconfig")

for proc.communicate()[0] .split(' \ n'):print" line%s"%line if len(line)== 0:

           continue # Isn't an empty string

    if line[0] != ' ': 

              if 'IEEE 802.11' in line:

                   if "ESSID:\"" in line:

                           print line[ESSID][0]
                    if "Access Point:\"" in line:
                           print line[Access Point][0]

1 个答案:

答案 0 :(得分:0)

对于iwconfig的输出,像这样的正则表达式看起来完全正常:

from re import *
from subprocess import *

proc = Popen(['iwconfig'], stdout=PIPE)
intext=str(proc.communicate()[0])
m1=search('Access Point: [ABCDEF0123456789:]*',intext)
AP=m1.group(0).split(' ')[2]
print AP

m2=search('ESSID:".*" ',intext)
ESSID=m2.group(0).split('"')[1]
print ESSID