I'm writing a program that will parse an Apache log file periodically to log it's visitors, bandwidth usage, etc..
The problem is, I don't want to open the log and parse data I've already parsed. For example:
line1
line2
line3
If I parse that file, I'll save all the lines then save that offset. That way, when I parse it again, I get:
line1
line2
line3 - The log will open from this point
line4
line5
Second time round, I'll get line4 and line5. Hopefully this makes sense...
What I need to know is, how do I accomplish this? Python has the seek() function to specify the offset... So do I just get the filesize of the log (in bytes) after parsing it then use that as the offset (in seek()) the second time I log it?
I can't seem to think of a way to code this >.<
You can manage the position in the file thanks to the seek
and tell
methods of the file
class see
https://docs.python.org/2/tutorial/inputoutput.html
The tell
method will tell you where to seek next time you open