> -----Original Message-----
> From: MRAB [mailto:goo...@mrabarnett.plus.com] 
> Sent: Thursday, May 21, 2009 19:02
> To: 'python-list@python.org'
> Subject: Re: A fast way to read last line of gzip archive ?
> 
> Barak, Ron wrote:
> > Hi,
> >  
> > I need to read the end of a 20 MB gzip archives (To extract 
> the date 
> > from the last line of a a gzipped log file).
> > The solution I have below takes noticeable time to reach the end of 
> > the gzip archive.
> >  
> > Does anyone have a faster solution to read the last line of 
> a gzip archive ?
> >  
> > Thanks,
> > Ron.
> >  
> > #!/usr/bin/env python
> >  
> > import gzip
> >  
> > path = "./a/20/mb/file.tgz"
> >  
> > in_file = gzip.open(path, "r")
> > first_line = in_file.readline()
> > print "first_line ==",first_line
> > in_file.seek(-500)
> > last_line = in_file.readlines()[-1]
> > print "last_line ==",last_line
> > 
> It takes a noticeable time to reach the end because, well, 
> the data is compressed! The compression method used requires 
> the preceding data to be read first.

I thought maybe someone has a way to unzip just the end portion of the archive 
(instead of the whole archive), as only the last part is needed for reading the 
last line.

Bye,
Ron.
-- 
http://mail.python.org/mailman/listinfo/python-list

Reply via email to