Python Programming
 
Forums: » Register « |  User CP |  Games |  Calendar |  Members |  FAQs |  Sitemap |  Support | 
User Name:
Password:
Remember me

The Shed is going Social! Join us on FaceBook and Twitter and chime in on the conversation.

Go Back   Dev Shed ForumsProgramming LanguagesPython Programming

Reply
Add This Thread To:
  Del.icio.us   Digg   Google   Spurl   Blink   Furl   Simpy   Y! MyWeb 
Thread Tools Search this Thread Rate Thread Display Modes
 
Unread Dev Shed Forums Sponsor:
  #1  
Old January 19th, 2004, 09:03 AM
123456789 123456789 is offline
Registered User
Dev Shed Newbie (0 - 499 posts)
 
Join Date: Jan 2004
Posts: 4 123456789 User rank is Just a Lowly Private (1 - 20 Reputation Level) 
Time spent in forums: 11 m 40 sec
Reputation Power: 0
scanning a logfile help

Ok here is the code which i have so far everything works but i need additional help

Code:
#!/usr/bin/python

import sys, string, getopt

def count_lines ():
       linecount = 0
       logfile = opt[1]
       for  line in open(logfile).readlines():
              linecount = linecount + 1

        print "accesses:", linecount

def processline ():
       count = 0
       total = 0
       logfile = opt[1]
       for line in open(logfile).readlines():
             words = string.split(line)
             words = words[6]
             total = total + 1
             if words.startswith('/pipermail'):
                 count = count + 1
                 percentage = count * 100 / total
            print  'Accesses directory:',count,'(',percentage,'%)'

try:
      optlist, list = getopt.getopt(sys.argv[1:], ':p:f:')

except getopt.GetoptError:
         Usage()
         print "called exception"
         sys.exit(2)

for opt in optlist
      if opt[0] == '-p':
           processline()
      if opt[0] == '-f':
          count_lines()



when this code is run in a terminal using the following options:

./python.py -f access.data -p access.data
i get the following output:

accesses: 6
Accesses directory: 3 ( 50% )

but instead of putting the filename after the -p option i would like to be able to put in a directory name such as:
/pipermail or,
/Glamorgan
and then the output would display the number of access to that specific director and not the whole file.

The logfile which I am processing contains the following data (just a sample as it contains many entries some with /pipermail and some with /Glamorgan)

213.1.145.506 --{12/Dec/2002:07:41:19 +0000} " GET /pipermail/notes/web/m2f.html HTTP/1.0" 301 -
213.42.73.85 - - [16/Nov/2003:08:15:21 +0000] "GET /Glamorgan/notes/scripting/html.html HTTP/1.1" 200 3974

Edit: Fixed broken [CODE] tag..

Last edited by netytan : January 19th, 2004 at 06:31 PM.

Reply With Quote
Reply

Viewing: Dev Shed ForumsProgramming LanguagesPython Programming > scanning a logfile help

Developer Shed Advertisers and Affiliates



Thread Tools  Search this Thread 
Search this Thread:

Advanced Search
Display Modes  Rate This Thread 
Rate This Thread:


Posting Rules
You may not post new threads
You may not post replies
You may not post attachments
You may not edit your posts

vB code is On
Smilies are On
[IMG] code is On
HTML code is Off
View Your Warnings | New Posts | Latest News | Latest Threads | Shoutbox
Forum Jump

Forums: » Register « |  User CP |  Games |  Calendar |  Members |  FAQs |  Sitemap |  Support | 
  
 


Powered by: vBulletin Version 3.0.5
Copyright ©2000 - 2013, Jelsoft Enterprises Ltd.

© 2003-2013 by Developer Shed. All rights reserved. DS Cluster - Follow our Sitemap