Quantcast

PHP é à quinta-feira – Previsão do tempo com PHP

36 Comentários

Mostrar a previsão do tempo usando a linguagem de programação PHP parece um “bicho de sete cabeças”. Sim, até pode ser, mas se aproveitarmos as API’s disponíveis para este serviço, reduz-se a meia dúzia de linhas de código. O objectivo deste artigo é (criarem) adaptarem um script, produzido em php, que vos mostre a informação meteorológica da vossa cidade.  Depois é só meterem no vosso site, blog, etc. Viva o PHP…e as outras linguagens de programação :).

Yahoo_Weather_Icons_by_golosiy


Basicamente o que é necessário saber é o URL da API, fornecendo como parâmetro de entrada  nome da cidade e o idioma. A resposta vem em XML sendo facilmente interpretada pelo PHP. A título de exemplo, vamos escolher a cidade de Viseu. Verifiquem o seguinte URL: http://www.google.com/ig/api?weather=Viseu&hl=pt-br

Para quem não tem um servidor Web para testar, pode instalar o XAMPP na vossa máquina para o efeito

Vamos lá ao trabalho:

1- Vamos fazer o download do script em txt aqui

2 – Editamos por exemplo com Notepad++ e actualizem para a vossa cidade e gravem como tempo.php

08-10-2009 00-18-49

3 – Gravem as alterações e façam upload para o vosso servidor ou pasta no XAMPP (neste caso podem colocar dentro da pasta htdocs).

4 – Agora basta acederem à pagina web (no caso do XAMPP: http://localhost/tempo.php)  e verifiquem qual a previsão meteorológica para Hoje e Próximos dias na cidade de Viseu (no meu caso).

08-10-2009 00-26-58

Fácil não é? Quem pretender sugerir alterações ao script está a vontade.

Podem ver aqui o script a funcionar para a cidade do Porto

Partilhar:
Tags:

Comentários

36
  1. PO

    Boa 🙂 já fiz assim uma brincadeira com flash a chamar esta mesma API 😉 ainda uso hoje… nunca falha ehehehe

    1. CF
      Carlos Franco

      boas, li aqui que conseguis-te por isto em flash, seria possivel dares-me uma ajuda nisso??

  2. DR
    Drake

    Giro. Obrigado por partilhares.

  3. JF
    José Fonseca

    Muito interessante. Tenho de ver se funciona na configuração que tenho na minha máquina 🙂

  4. NA

    Também podem fazer com o tempo do sapo, que penso que têm o tempo mais correcto.

    1. CH
      choppy

      Como é que posso usar a aplicação do sapo?

      1. PO

        O sapo disponibiliza n serviços… Contudo não permite que os utilizes com fins lucrativos…
        http://services.sapo.pt

        1. PP

          Interessante @Pouic não conhecia.
          Neste caso chama-se webservices, apenas temos de dar os parâmetros de entrada

  5. BÓ

    Boa dica!
    Para complementar, era sabermos a localização do visitante, através do IP.

    1. TI
      TiagoKito

      http://forum.imasters.uol.com.br/index.php?/topic/214533-localizacao-atraves-do-ip/

      Penso que a cidade é que falha um bocado, porque deu m lisboa xD

      Abc

  6. RA
    Rafael

    Boa dica, parabéns.

    Abraço,
    Rafael.

  7. TI
    TiagoKito

    Impecavel… Bom pa testar pa relembrar PHP 🙂

    Abc

  8. LF
    luis-f

    Onde é que eu já vi este artigo!!?
    Será que foi aqui:
    http://thiagobelem.net/blog/php/2009/09/13/mostrando-a-previsao-do-tempo-com-php-637/

    Cump.

    1. PP

      biiiiiiingo @luis-f !!!
      Não sei se já te deste ao trabalho de ver o script e ver a parte dos créditos.
      Não há que tirar o mérito a quem faz as coisas.

      Abraço

  9. VI
    ViajantE

    Estive a ver o script e ainda não percebi, isto é se o script aceita, colocar mais que uma cidade para apresentar o tempo.
    Alguém já exprimentou?

  10. SI
    Silvio

    Obrigado pela divulgação, e por tere utilizado Viseu, como exemplo! 😀

    1. PP

      @Silvio, de nada.
      Viseu….por algum motivo deve ser 🙂

  11. CA
    Carlos

    Então, como descubro quais cidades a previsão suporta? Não achei em nenhum lugar

  12. SO
    softclean

    Excelente dica de PHP. Mostra bem a utilização de imensos webservices gratuitos que temos ao nosso dispor.

    O código também me pareceu bastante limpo e arrumado, boa descoberta 😉

  13. GO
    Gooden

    O único problema a meu ver é que se Puser Lisboa não dá …. tenho de meter Lisbon e já funciona. 😐

    Acontece a mais alguém este problema?

  14. WS
    Wilson Silva

    Tenho pena que a quinta feira do PHP esteja de lado. Estou a tentar adicionar um campo de pesquisa às páginas do meu site mas não tenho nenhuma ideia de como é que se fazem. Se souberem de alguma coisa agradeço 🙂

    1. PP

      Não é dificil.. metes um form e depois apanhas o que o utilizador escreve e fazes uma querie a Base de dados por essa keyword…isto se tiveres base de dados.

      Orienta-te aqui: http://php.about.com/od/phpwithmysql/ss/php_search.htm

  15. BC
    Bruno Costa

    Muito boa noite

    Actualmente estou a desenvolver um site em php para um núcleo de ambiente, em que este tentei colocar o ficheiro tempo.php a funcionar no servidor e não funciona e com o xampp funciona direitinho, será que tenho a pedir ao administrador do servidor para actualizar a versão do php, porque so tenho acesso ftp.
    Vou dar o endereço http://geonucleo.ufp.pt/tempo assim não funciona, mas se eu comentar

    $info = $xml->xpath(‘/xml_api_reply/weather/forecast_information’);
    $atual = $xml->xpath(‘/xml_api_reply/weather/current_conditions’);
    $proximos = $xml->xpath(‘/xml_api_reply/weather/forecast_conditions’);

    ja funciona alguma coisa http://geonucleo.ufp.pt/tempo/index2.php

    Neste URL http://geonucleo.ufp.pt/tempo/info.php tenho os dados do servidor.

    Gostaria se me podessem ajudar, porque acho que ficaria bem um script deste.

    Obrigado

    1. BC

      Problema solucionado

      Analisei qual seria os portos que cada função necessitava e existia alguns no servidor que estavam fechados.

      cumps

  16. TR
    triplox

    Não funciona em cidades do interior de minas gerais

    1. TY

      deveria ter uma funcão para mostrar uma mensagem de previsão indisponível caso não esteja realmente disponível 😉

  17. TI
    Tiago

    Boa noite.

    estou a desenvolver uma aplicação em flash e gostaria de integrar a previsão de tempo.
    precisava de uma ajuda, como consigo integrar este php em flash (AS2).
    Cumprimentos

  18. PD
    Pedro Dias

    Boa tarde,

    Desde ja agradeço a partilha deste script.

    Estou com o mesmo problema do Bruno Costa, o script dá-me erro se incluir a função xpath().

    Andei a investigar e conclui que o problema poderia passar por não ter o SimpleXML instalado no meu servidor, mas tenho!

    Não estou a conseguir resolver o problema, será que alguém me indicar por onde posso estar a errar?

    Obrigado.

  19. JM

    Olá!
    Eu achei show o script, só não gostei das imagens, achei feias. Como faço para que ele capture imagens que estão hospedadas no servidor do site em uma pasta? abs

  20. BW

    ótima dica! Parabéns!

  21. SO

    gostaria que me explicassem como coloco a previsao do tempo no meu site, nao estou a conseguir fazer.
    Já mudei a cidade, ja gravei para tempo.php
    mas nao consigo fazer o resto

    ajudem-me se fizerem o favor
    agradeço

  22. EU
    eu

    Não funciona, as imagens nao aparecem.

  23. LU
    Luiz

    Outros serviços de previsão que conheço são (todos com código woeid de curitiba):

    http://weather.service.msn.com/data.aspx?src=vista&weadegreetype=C&culture=en-US&wealocations=wc:BRXX0079 (previsão de 5 dias)
    http://yahoowidget.weather.com/weather/local/BRXX0079?cc=*&dayf=5&ut=c&ud=k&us=k&up=m&ur=m&prod=bd_select&par=yahoowidgetxml
    http://apple.accuweather.com/widget/osx1/weather_data_v2.asp?location=SAM|BR|BR015|CURITIBA|&metric=1

    E se por acaso alguém precisar da previsão do tempo apenas para o paraná, o Simepar disponibiliza previsões mais detalhadas que a maioria dos web services. Postei um artigo com as instruções oficiais no endereço http://my.opera.com/facildelembrar/blog/previsao-do-tempo-em-curitiba-e-no-resto-do-parana

  24. IB
    Ivo Barbosa

    Links off

  25. JV
    Joaquim Venâncio

    Boa noite.

    Como faço para que mostre o tempo na localização do visitante???

Deixe um comentário