2011-05-03 16 views
3

什麼是通過Python獲取網絡統計信息(帶寬使用率,當前下行/上漲率)的最簡單方法。Python net activity statistics linux

我意識到它必須是/ proc的系統調用,但有沒有更簡單的方法或標準* nix發行版中提供的某種工具?

感謝

注意:我要使用的/ proc /淨的/ dev和解析輸出8-)

回答

4

你可以嘗試使用http://pypi.python.org/pypi/pynetinfo/ - 這將需要擴大,以獲得統計數據,但應該是相當平凡的。大部分代碼已經存在。

或者你可以解析的ip -s link show device_name

+0

真棒輸出,我唯一缺少的是電流上升/下降速率。我需要自己計算一下嗎?如果是這樣,那很好,只是想知道這是否已經到位 – 2011-05-03 22:30:02

+1

您需要自己計算它,因爲除非您爲測量定義一個時間段,否則「當前速率」並不存在。大多數軟件只是經常輪詢值。 (如果你想頻繁地輪詢值,避免每次分叉'ip' - 在這種情況下'ioctl()'是正確的方法)如果你不想寫,也可以從python本身調用ioctl C.但界面至少很棘手...... http://docs.python.org/library/fcntl.html – viraptor 2011-05-03 22:43:38

+1

謝謝!我計劃派生pynetinfo並自己添加信息。 – 2011-05-03 22:47:20