0
有沒有一種方法,從Python的,內知道,如果給定的(連接)網絡接口是無線或以太網?Python:是一個給定的網絡接口WiFi或以太網?
模塊inetfaces
提供了可用網絡接口和相應地址的列表,但僅此而已。
有沒有一種方法,從Python的,內知道,如果給定的(連接)網絡接口是無線或以太網?Python:是一個給定的網絡接口WiFi或以太網?
模塊inetfaces
提供了可用網絡接口和相應地址的列表,但僅此而已。
隨着pyroute2 .IW(那樣的腳本是在實施例目錄):
import sys
from pyroute2 import IW
from pyroute2 import IPRoute
from pyroute2.netlink import NetlinkError
ip = IPRoute()
iw = IW()
index = ip.link_lookup(ifname=sys.argv[1])[0]
try:
iw.get_interface_by_ifindex(index)
print("wireless interface")
except NetlinkError as e:
if e.code == 19: # 19 'No such device'
print("not a wireless interface")
finally:
iw.close()
ip.close()
參見:http://stackoverflow.com/questions/14648941/how-to-know-if-mac-地址是連接到無線卡或以太網卡 – Dhara 2013-05-07 15:19:18
http://stackoverflow.com/questions/5281341/get-local-network-interface-addresses-using-only-proc – gsmaker 2013-05-07 15:20:46
其實,我會在單獨的進程'iwconfig $ interfaceName'中運行並解析結果。這會好嗎? – 2013-05-07 15:26:12