-
Одна из служб Google, Google Elevation, позволяет получить высоту точек на местности над уровнем моря: ей отправляется запрос с координатами одной или нескольких точек, а она возвращает их координаты. Ответ приходит в формате XML и затем обрабатывается. Для передачи запросов я использую два способа:
WEBBrowser1.Navigate(Request);
S:=IdHTTP1.Get(Request);
Первый способ работает без замечаний.
Второй сразу после перезагрузки работает нормально. Но передав
несколько тысяч запросов вдруг начинает возвращать сообщение
от Google "OVER_QUERY_LIMIT" - выход за ограничения (там есть ограничения на количество точек и длину запроса). Эти же запросы TWEBBrowser отправляет и принимает нормально.
Что тут может быть? Такое впечатление, что в процессе работы в запрос что то добавляется.
-
в запрос там ничего не добавляется.
превышено допустимое количество запросов в единицу времени.
-
Но TWEBBrowser работает совершенно нормально.
С тем же запросом. Я бы не заморачивался, но
Indy возвращает ответ в 2-3 раза быстрее.
-
Так и не заморачивайся.
-
каким браузером представляется сайту инди?
-
а вот не покуй ли каким браузером там кто-то представляется
-
Имеешь в виду User Agent ?
Mozilla/3.0 (compatible; Indy Library)
-
> а вот не покуй ли каким браузером
имхо, не факт!
> Indy Library
говорит не о работе пользователя (вероятность), а о автоматике...
попробуй сметить на нормальный юзер агент...
-
ага. попробуй еще монитор протереть.
-
зы.
> Indy возвращает ответ в 2-3 раза быстрее.
значит и запросов ты отправляешь больше? пробуй уменьшить кол-во запросов в имнуту и опытным путем узнаешь, когда перестанет появляться
> OVER_QUERY_LIMIT
!
-
Медвежонок Пятачок, не веди себя так! Лично у меня и так уже о тебе не хорошее мнение...
-
Это уже второй гениальный совет в ветке?
-
гениальный? нет! ты о чем? Нам - простым смертным, до Вас - богов далеко!
-
>brother
У гугла об ограничении частоты запросов ничего не говорится.
Тем не менее попробую.
-
> У гугла об ограничении частоты запросов ничего не говорится.
но ошибку же ты получаешь? :)
-
У гугла об ограничении частоты запросов ничего не говорится.
Конечно нигде. Особенно если документацию к апи не читать.
-
Тем не менее попробую.
Да стоит ли?
Получено сообщение овер квери лимит.
Известно, что идшттп тратит время только на сетевой транспорт в отличие от веббраузера.
Известно, что идшттп быстрее исчерпывает лимит запросов.
Любой высший примат типа шимпанзе в этом месте уже докумекает - в чем там действительно заключена засада.
-
Ошибку получаю от Indy. И не сразу, а спустя какое то время.
TWEBBrowser работает совершенно нормально.
Кстати, как вариант. Для TWEBBrowser я испльзую такой код:
WB.Navigate(Request);
while WB.ReadyState < READYSTATE_INTERACTIVE do
Application.ProcessMessages;
Т.е. программа ждёт, пока придёт ответ. Без этого программа ругается.
Нет ли чего такого в Indy ? Может, есть какой то признак, что приём закончен?
-
конечно есть.
возврат из метода гет - это и есть признак того, что прием закончен.
-
Цитата со страницы:
https://developers.google.com/maps/documentation/elevation/?hl=ru-RU#Limits
"На использование Google Elevation API накладываются ограничения в отношении количества запросов: не более 2500 в день. В каждом запросе допускается указывать не более 512 местоположений, но не более 25 000 в день."
Никаких ограничений там больше нет.
-
Ой, как же так?
Еще пять минут назад не было никаких ограничений.
Теперь вдруг они найдены.
Остается самая малость.
Сделать усилие мозгом и понять, что за ограничение ты уже вышел.
-
>Медвежонок Пятачок
Ты невнимателен. Цитирую свой 1-й пост:
"там есть ограничения на количество точек и длину запроса"
Я этот вариант проверял. Если выйти за ограничения, то
и TWEBBrowser перестаёт работать.
-
да мне-то вообще похрен.
напиши в гугл про то, что ты не превышаешь квоту, но ошибку о превышении квоты получаешь.
или лучше в европейский суд по правам.
-
Или во всемирную лигу сексуальных реформ
;-)))
Всем спасибо.
Попробую ещё полазить по интернету.
Может, чего нарою.
-
> Indy возвращает ответ в 2-3 раза быстрее.
и в 2-3 раза быстрее наступает конец
-
веди подсчет количества запросов за сутки
-
считать нужно до первого OVER_QUERY_LIMIT