Um dos aplicativos mais utilizados no Linux para informações do sistema (além de deixar o desktop mais bonito) é o Conky. Sua facilidade de configuração e personalização surpreende (veja por exemplo esse site).

Na melhor rede social de usuários Linux do mundo, não somos diferentes. No Doode, gostamos de personalizar nosso desktop e o Conky executa muito bem essa função. Exceto por um pequeno detalhe que estava incomodando: queríamos exibir alguns dados meteorológicos (temperatura atual, principalmente). Nenhum dos serviços suportados por padrão no Conky estava funcionando! Então resolvemos pôr a mão na massa e escrever tudo na mão.

Agora a versão 0.0.1 já está pronta! Um script em Python que recupera as informações do servidor e exibe no Conky. Você pode procurar pela versão mais recente do script aqui. Abaixo está a primeira versão (licença GNU GPL v3). Lembrando que eu programo em Python há menos de uma hora, então não deve ser o melhor código já escrito na história :D

import urllib
from xml.dom import minidom

# config options
WEATHER_URL = 'http://xml.weather.yahoo.com/forecastrss?w=%s&u=c'
WEATHER_NS  = 'http://xml.weather.yahoo.com/ns/rss/1.0'
location    = '455988'    # veja a seguir como descobrir esse código

url      = WEATHER_URL % location
response = urllib.urlopen(url)
xml      = minidom.parse(response)

# get current temperature
current = xml.getElementsByTagNameNS(WEATHER_NS, 'condition')[0]
temperature = current.getAttribute('temp')

print temperature

Para descobrir o código da sua localização (variável location no código), acesse http://weather.yahoo.com/ e pesquise pelo local desejado. Por exemplo, pesquisando por “São Paulo, SP” você será redirecionado para a URL http://weather.yahoo.com/brazil/sao-paulo/sao-paulo-455827/ exatamente esse último código numérico deve ser alterado na linha 7. Altere o código original por outro de sua escolha e salve o arquivo em qualquer lugar com qualquer nome ;-)

A última configuração necessária é no seu .conkyrc. Será necessário definir um tempo para atualizar os dados (executar o script). Isso pode ser feito em uma linha, onde você quer exibir a temperatura:

${texeci [TEMPO_EM_SEGUNDOS_PARA_ATUALIZAR] python /path/to/script/weather.py}

Nessa linha, você precisa alterar:
[TEMPO_EM_SEGUNDOS_PARA_ATUALIZAR] – o tempo em segundos (no mínimo 5 minutos * 60 = 300 segundos) para atualizar os dados;
/path/to/script/weather.py – o lugar onde você salvou o código anterior (eu disse em qualquer lugar com qualquer nome, então você é quem sabe onde quer deixar o script)

Feito isso, é necessário reiniciar o Conky para recarregar as configurações:

Terminal
$ killall -SIGUSR1 conky

Isso deve bastar para exibir a temperatura atual no seu Conky. Qualquer problema ou dúvida, pode deixar um comentário aqui que eu vou fazer o possível para resolver :D

Com as tags → 
Plataforma Wordpress Latest (GPLv2)
Tema PageLines Lite Improved (GPLv3)
Hospedado por OpenShift by RedHat
Domínio registrado pela Neep Host
Creative Commons Attribution-ShareAlike License
Copyleft © 2016 Eduardo Weiland
Utilize um leitor de QR Code para acessar o blog no seu celular:
21
%d blogueiros gostam disto: