Я использую API поиска медиа в Instagram
Теперь я вызываю этот API в цикле for и меняю значение минимальной и максимальной временных меток на каждой итерации. Так что я получаю изображения для этого периода времени.
Проблема, с которой я сталкиваюсь, заключается в том, что я получаю один и тот же результат (или набор изображений) на каждой итерации. Таким образом, изменение временных меток не влияет на результат.
Это из-за кеширования? или Instagram не разрешает такие запросы в итерации? Или есть другой способ, например. нумерацию страниц или что-то делать такие запросы?
Вот код (на питоне):
import urllib2
import datetime
import time
import json
clientId = 'ef63de4634b344e3856b4f4138a8db56'
city = "Bali"
baliLat = '8.51'
baliLong = '115.239394'
distance = 1000
def callApi(startStamp, endStamp):
searchStr = 'https://api.instagram.com/v1/media/search?lat=' + baliLat + '&lng=' + baliLong + '&client_id=' + clientId + '&MAX_TIMESTAMP=' + str(endStamp) + '&MIN_TIMESTAMP=' + str(startStamp) + '&distance=' + str(distance) + '&count=10'
print searchStr
response = urllib2.urlopen(searchStr)
res = json.loads(response.read())
return res
if __name__ == "__main__":
# call instagram api for 1 year for each month for 1st week.
# compare the dates of creation for each month.
start = '1/05/2014'
startDate = datetime.datetime.strptime(start, '%d/%m/%Y')
count = 0
result = {}
while count < 12:
endDate = startDate + datetime.timedelta(days=7)
minStamp = time.mktime(startDate.timetuple())
maxStamp = time.mktime(endDate.timetuple())
res = callApi(minStamp, maxStamp)
result[str(startDate)] = res
startDate = startDate + datetime.timedelta(days=30)
count += 1
f = open('out-y.json', 'w')
f.write(json.dumps(result))
f.close()