我想用python制作一个程序,它监视我的浏览和下载数据,并显示我在一天(或在给定的时间间隔内)下载了多少数据。用python监视我的下载用法
我不想要我下载的内容,我只需要知道我下载和/或浏览了多少数据(数据量)。
对于那个我应该访问端口或其他东西?
我该如何继续?
编辑:我使用的是Ubuntu 11.10。
我想用python制作一个程序,它监视我的浏览和下载数据,并显示我在一天(或在给定的时间间隔内)下载了多少数据。用python监视我的下载用法
我不想要我下载的内容,我只需要知道我下载和/或浏览了多少数据(数据量)。
对于那个我应该访问端口或其他东西?
我该如何继续?
编辑:我使用的是Ubuntu 11.10。
我了解如何监视我的下载的基本想法。我基本上把数据包的数据加起来
#!/usr/bin/python2.7
import pcap, dpkt, socket
pc = pcap.pcap()
ports = (80, 8080, 888, 443)
def process():
mem = 0
sport = 0
dport = 0
try:
for ts, pkt in pc:
eth = dpkt.ethernet.Ethernet(pkt)
ip = eth.data
if ip.__class__ == dpkt.ip.IP:
ip1, ip2 = map(socket.inet_ntoa, [ip.src, ip.dst])
if ip.p == 6:
I7 = ip.data
sport, dport = [I7.sport, I7.dport]
if sport in ports or dport in ports:
if len(data) > 0:
print 'From %s to %s, length: %d' %(ip1, ip2, len(I7.data))
mem = mem + len(I7.data)
except KeyboardInterrupt:
return mem
def main():
mem = process()
print float(mem/(1024*1024)), 'mb'
return
if __name__ == '__main__':
main()
这打印源ip,dest ip,包的长度,直到keybaordinterrupt提供。
http://jayrambhia.wordpress.com/2012/01/12/monitor-your-browsingdownloading-data-via-python/ – Froyo 2012-01-12 21:15:27
你的意思是“保持我的浏览和下载数据上的标签?”,也许描述一个具体的用例会有所帮助。 – MatToufoutu 2012-01-12 09:07:55
我只需要我下载的数据量。 – Froyo 2012-01-12 09:14:15
这将取决于平台,您应该添加您的平台的描述 – 2012-01-12 09:18:28