You are not logged in.

#1 2016-09-23 16:00:02

Quasar Produções
Member
Registered: 2016-09-23
Posts: 3

Como consultar endereço com coordenadas usando o Nominatim?

Pessoal, SOCORRO!!

Já tentei uns 30 códigos diferentes (sem exagero algum) através de pesquisa na internet e não consigo obter o resultado via código php.

O último que tentei sem sucesso foi:

$url = "http://nominatim.openstreetmap.org/reve … sdetails=1";

$html = file_get_html($url);
foreach ($html->find('road') as $element ) {
   echo $element;
}

Como faço isso funcionar??

Offline

#2 2016-09-24 11:16:45

santamariense
Moderator
Registered: 2015-08-26
Posts: 117

Re: Como consultar endereço com coordenadas usando o Nominatim?

Tentei requisitar pela url e para mim deu erro tipo "HTTP request failed! HTTP/1.1 429 Too Many Requests", ou seja, creio que o servidor negou devido a quantidade de requisições (?!?!pq?!?!?) . Não sei se não é o mesmo problema que está ocorrendo para você, então baixei o xml e salvei no mesmo diretório do arquivo seguinte em php como "reverse.xml"
Com a $url alimentada com o arquivo baixado funciona perfeitamente o seguinte código:

<?php

$url = "http://nominatim.openstreetmap.org/reve … sdetails=1";
//$url = "reverse.xml";

$xml = simplexml_load_file($url);

   $road = $xml->addressparts->road;
   $city = $xml->addressparts->city;
   echo $road.", ".$city;

echo "<br><br>";

   $lat = $xml->result["lat"];
   $lon = $xml->result["lon"];
   $completo = $xml->result;
   echo "O endereço completo para latitude["
        .$lat."] e longitude ["
        .$lon."] é:<br>".$completo;

?>

Testa aí e diz se conseguiu.

Offline

#3 2016-09-24 16:25:49

Quasar Produções
Member
Registered: 2016-09-23
Posts: 3

Re: Como consultar endereço com coordenadas usando o Nominatim?

MUITO OBRIGADO!!! Deus que lhe retribua o carinho e a atenção. FUNCIONOU PERFEITAMENTE!!!

O erro que estava dando era realmente o número excessivo de requisições. A única ação que fiz foi sobrepor seu código ao meu. Agora, eu gostaria de entender o que você fez exatamente. Como assim "baixei o xml"?? Como se faz isso???

Offline

#4 2016-09-26 00:01:39

santamariense
Moderator
Registered: 2015-08-26
Posts: 117

Re: Como consultar endereço com coordenadas usando o Nominatim?

Baixei = salvei o arquivo "http://nominatim.openstreetmap.org/reve … sdetails=1" (CTRL+S) no computador.

Mas esse erro de excesso de requisições tá me perturbando. É sabido que o OSM tem limites para acesso a API, de modo a não sobrecarregar os servidores. Mas isso tá fora do normal. Acho que deve haver algum erro.

Salvar o arquivo neste caso só serviu para teste. Nada mais é que ter no computador a versão do arquivo que está online.

Você terá que dar uma lida na API do Nominatim. Quantas requisições pode fazer por dia. Essas coisas. E se de cara você notar que o número de acessos a sua aplicação vai ultrapassar esse limite, talvez seja melhor implementar a leitura do arquivo XML do lado cliente (javascript) e não servidor (php).

bom trabalho.

Offline

#5 2016-09-26 15:37:59

Quasar Produções
Member
Registered: 2016-09-23
Posts: 3

Re: Como consultar endereço com coordenadas usando o Nominatim?

Ok!! Mais uma vez, OBRIGADO!!

Offline

Board footer

Powered by FluxBB