2016-11-23 19 views
-1

我可以使用任何python库进行连接,或者有人可以告诉我如何从python中的commandprompt实现命令。如何获得我使用python连接的无线路由器的BSSID?

+0

你在哪个平台上,Windows或Linux上 –

+0

Windows和Linux都提供命令行工具来完成这些网络操作。 对于Linux阅读“WPA supplicant”和在Windows上,你可以使用'netsh' 一旦你知道需要执行什么命令,你可以使用'subprocess'模块执行那些 –

回答

0

取决于操作系统。

from sys import platform 
import subprocess 
if platform == 'linux' or platform == 'linux2': 
    # linux 
    output = subprocess.check_output('iwgetid', '-r') 
elif platform == 'darwin': 
    # OS X 
    ps = subprocess.Popen(('/System/Library/PrivateFrameworks/Apple80211.framework/Versions/Current/Resources/airport', '-I'), stdout=subprocess.PIPE) 
    output = subprocess.check_output(('awk', '/ SSID/ {print substr($0, index($0, $2))}'), stdin=ps.stdout) 
elif platform == 'win32': 
    output = subprocess.check_output("netsh wlan show interfaces") 
    ps.wait() 

print output 
+0

非常感谢你!可以请告诉我如何仅打印bssid? –

+0

如果它是mac,它已经做到了。你试过吗? – paragbaxi

+0

可能是在linux下我们应该将参数作为数组传递,就像'output = subprocess.check_output(['iwgetid','-r'])' –

相关问题