Преобразование полного почтового индекса Великобритании в координаты в серверном скрипте (серверная версия GlocalSearch?)

Это для поиска на веб-сайте. У меня все это работает с использованием стандартного геокодера Google Maps, но по какой-то странной причине он ищет только по первой части почтового индекса.

Это можно сделать в JS на стороне клиента с использованием GlocalSearch. Однако неясно, как перевести это в серверное решение.

Вот упрощенная версия того, что у меня есть на данный момент:

<?php
$requestURL = "http://maps.google.co.uk/maps/geo?output=csv&key=$apiKey&gl=uk&q="
  . urlencode($_GET['pc']);
echo file_get_contents($requestURL);
?>

(Вставьте свой ключ API для проверки.) Попробуйте, например, DE1 2PQ и DE1 3NF. Те же самые координаты сообщаются для обоих.

Любые идеи?


person Stewart    schedule 24.11.2009    source источник
comment
См. этот вопрос для объяснения данных Google по Великобритании: search/1750638#1750638" title="почему геокодер Google дает результаты, отличные от результатов поиска по карте"> stackoverflow.com/questions/1748785/   -  person Chris B    schedule 24.11.2009


Ответы (2)


Я нашел ответ в конце концов. Google предоставляет доступ к сценариям на стороне сервера, лежащим в основе Ajax API, для приложений, отличных от JS, поэтому мне просто нужно было следовать инструкции и ссылка на сайте Google. Локальный поиск здесь актуален.

person Stewart    schedule 25.11.2009

Картографические данные Великобритании дороги, возможно, у Google есть лицензия на данные почтового индекса более высокого уровня только для первой части кода (общая площадь), а не для полной позиции на уровне улицы.

edit:
Или у них может быть нераспространяемая лицензия на точные данные. Но крупномасштабные данные находятся в свободном доступе.

И еще менее ясно, почему вы должны платить государственному почтовому отделению за общедоступные данные, которые облегчили бы их работу.

person Martin Beckett    schedule 24.11.2009
comment
Так как же GlocalSearch и сам веб-сайт Google Maps обходят это? - person Stewart; 24.11.2009
comment
@Stewart - лицензия Google позволяет им выполнять поиск, но не позволяет распространять ее. - person Chris B; 24.11.2009
comment
Но третья сторона размещает на своем веб-сайте некоторый код, чтобы спросить Google, где этот почтовый индекс? по-прежнему только ищет его, а не перераспределяет. Так что с этим делать? Кроме того, GlocalSearch — это уже то, что любой может использовать на веб-сайте, так почему же эквивалентный код на стороне сервера должен отличаться? - person Stewart; 24.11.2009
comment
Использование глобального поиска через сайт Google более ограничено. Вы можете выполнять 6 бесплатных поисков IIRC в день на веб-сайте Royal Mail, но вы не можете получить данные бесплатно. - person Martin Beckett; 24.11.2009