2013-09-23 2 views
1

У меня есть json-файл, и этот файл будет обновляться каждые 5 минут или около того. Сначала я разбираю файл с начальной точки. Теперь мне нужно разобрать этот json-файл каждые 15-20 минут. Есть ли способ сохранить объект указателя, который сохранит последнюю строку файла, и снова после 15/20 минут мне нужно проанализировать файл, который должен начинаться с этого указателя (так как разбор одного и того же данных (исторические данные) будет крайне неэффективным и сделает мой процесс медленным)?Анализ json-файла после определенного интервала времени

+0

У вас есть тест для вашей гипотезы? –

ответ

2

Использование Телль() файла (после чтения из файла) это вернет текущий указатель. И в следующий раз, когда вы прочитаете, используйте функцию seek() файла для установки указателя на старую позицию.

Пример:

f = open("test.json" , "w+") 
..... 
..... 
your code for reading 
f.read() 
..... 
..... 
last_position = f.tell() # return current position of file pointer(where you stoped reading) 

теперь, когда вы в следующий раз читать из использования файла искать функции

f = open("test.json" , "w+") 
f.seek(last_position) 
f.read() # now this will start reading from last position 

Надежда() Это поможет :)

0

см питона док для метода linecache

+1

Я позабочусь об этом и вернусь к вам после его реализации. Благодарю. – PythonEnthusiast

Смежные вопросы