@freshcot

Какой модуль python лучше использовать для работы с сетью?

Доброго дня, подскажите, каким образом можно получить информацию о пакетах на сетевых интерфейсах? Т. е. нужен способ работы с данными, которые можно получить из вывода cat /proc/net/dev

Можно, конечно, просто спарсить вывод, но это так себе решение.
В итоге, нужно посчитать трафик на конкретном интерфейсе
  • Вопрос задан
  • 315 просмотров
Пригласить эксперта
Ответы на вопрос 1
delvin-fil
@delvin-fil
Crazy Linux-admin
Я делаю так(linux):
Установлен vnstat. cron каждые пять минут пинает
*/5 * * * * /usr/bin/vnstat -i eth0 --json > /home/vns.json

Или xml, если неудобно json
*/5 * * * * /usr/bin/vnstat -i eth0 --xml h > /home/vns.xml

Затем беру либу json
import time, json
from pprint import pprint
localtime = time.localtime(time.time())
z = localtime[3]

with open('/home/vns.json') as json_data: 
    dat_j = json.load(json_data) # 
    json_data.close()

out = round(dat_j['interfaces'][0]['traffic']['hours'][0]['rx']/1024, 2)

И делаю c переменной dat_j что хочу.
Ответ написан
Комментировать
Ваш ответ на вопрос

Войдите, чтобы написать ответ

Похожие вопросы
23 нояб. 2024, в 00:16
2000 руб./за проект
22 нояб. 2024, в 23:55
3000 руб./за проект
22 нояб. 2024, в 22:26
3500 руб./за проект