2011-02-01 92 views
1

我編寫了一個小應用程序,我在Linux的終端中使用它來跟蹤在Internet連接會話中消耗的數據量(I將信息存儲在MongoDB中)。數據上下我手寫並從監視器系統中(視覺上)讀取它們,事實是,我希望自動化更多的應用程序,並使其從我用來連接的接口網絡中上下讀取數據互聯網(在我的情況ppp0),但細節是,我不能找到在Python中的方式。我猜Python有一個模塊可以導入或者讓我做我想做的事情,但是直到現在我已經研究過了,我還沒有找到辦法做到這一點。從Python中的網絡接口獲取信息的模塊或函數

你知道任何模塊,函數或類似的東西,它允許我在python中做我想要的嗎?

有沒有例子?

在此先感謝

+1

這個論壇話題的建議閱讀'的/ proc /淨/ dev`:HTTP: //ubuntuforums.org/showthread.php?t=722781 – 2011-02-01 21:52:28

回答

0

嗯,我回答自己

在社區PYAR這recipe找到我我像手套要做的事情,我們希望,而無需使用額外的命令或其他應用程序。

稍微修改代碼以更好地滿足我的應用程序並添加功能comvierta字節兆字節的離開這樣的:

def bytestomb(b): 
    mb = float(b)/(1024*1024) 
    return mb 


def bytessubidatransferidos(): 
    interface= 'ppp0' 
    for line in open('/proc/net/dev', 'r'): 
     if interface in line: 
      data = line.split('%s:' % interface)[1].split() 
      tx_bytes = (data[8]) 
    return bytestomb(tx_bytes) 


def bytesbajadatransferidos(): 
    interface= 'ppp0' 
    for line in open('/proc/net/dev', 'r'): 
     if interface in line: 
      data = line.split('%s:' % interface)[1].split() 
      rx_bytes = (data[0]) 
    return bytestomb(rx_bytes) 


print bytessubidatransferidos() 
print bytesbajadatransferidos()