Возник вопрос о том как в программе Sas.Planet скачивается тайл с google.maps.
Для начала скажу как можно скачать тайл с Яндекса.
Для этого надо набрать строку в браузере или web-клиенте
http://sat02.maps.yandex.net/tiles?l=sat&x=77&y=40&z=7&g=Ga
или
http://vec02.maps.yandex.net/tiles?l=skl&x=77&y=40&z=7&g=Ga
и собственно сохранить тайл на диск. Номера тайлов берутся из этого кода
Но google такое не проходит
Есть код:
- Код: Выделить всё
var
khm: string;
begin
khm := RegExprReplaceMatchSubStr(GetURLBase, 'khms\.google', 'khms'+inttostr( Random(4) )+'.google' );
ResultURL := khm + Version + '&src=app&x='+inttostr(GetX)+'&y='+inttostr(GetY)+'&z='+inttostr(GetZ-1)+'&s='+copy('Galileo',1, Random(8));
end.
который делает запросы вида
http://khms2.google.com/kh/v=692&src=app&x=77&y=40&z=7&s=Gali
если более точно, то
- скрытый текст: показать
Я установил HTTP снифер Fiddler, для того, чтобы узнать текст запросов к google от Сас Планеты.
но попытка открыть такой запрос в браузере(Opera, IE,firefox), равно как и запрограммировав этот запрос через веб клиент на С++, С# - я все равно получаю ошибку 404.
Более того, даже смотря на лог HTTP-снифера видно, что и сама САС.Планета получает множество ответов 404, при подгрузке тайлов Google maps, но тем не менее, получает каким-то образом тайлы. В изображении сначала идут запросы к яндекс maps с кодом ответа 200 (OK), ниже к Google maps c кодом ответа 404.
- скрытый текст: показать
Возникает вопрос: какой секретный ингредиент делает запросы сас-планеты к серверу Google такими соблазнительными, что он их съедает и выдает ответ?
Возможно есть еще какие-то запросы, которые не фиксируются в HTTP снифере?