2012-01-12 16 views
0

pythonで私の閲覧とデータのダウンロードを監視し、1日にダウンロードしたデータの量(または指定した時間間隔)を表示したいと考えています。私のダウンロード使用状況をPythonで監視します

ダウンロードしたものが欲しいのではなく、ダウンロードしたりブラウズしたデータの量を知る必要があります。

私はポートなどにアクセスする必要がありますか?
どうすればいいですか?

編集:私はUbuntu 11.10を使用しています。

+1

「タブを閲覧してデータをダウンロードしておいてください」とはどういう意味ですか、具体的な使用例を説明すると助かります。 – MatToufoutu

+0

ダウンロードしたデータの量だけ必要です。 – Froyo

+0

これはプラットフォームに依存します。プラットフォームの説明を追加する必要があります –

答えて

0

ダウンロードの監視方法に関する基本的な考え方があります。私は基本的には、パケットのデータを取り、keybaordinterruptが提供されるまでこれは、送信元IP、DEST IP、パッケージの長さを出力します

#!/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() 

それを追加します。

+0

http://jayrambhia.wordpress.com/2012/01/12/monitor-your-browsingdownloading-data-via-python/ – Froyo

関連する問題