Obtendo a temperatura com Perl
Publicado por Daniel Vinciguerra (última atualização em 03/03/2016)
[ Hits: 5.169 ]
Homepage: http://bivee.com.br
Por vezes, nós precisamos obter algumas informações de algum site automaticamente, para automatizar algum relatório ou mostrar algum status.
O módulo LWP::UserAgent do Perl pode lhe ajudar nessa tarefa, fazendo as vezes de um "navegador" e permitindo que façamos consultas e acessemos informações de sites programaticamente.
Executando:
$ perl climate.pl
Referência: https://metacpan.org/pod/LWP::UserAgent
#!/usr/bin/env perl # 2016 (c) Daniel Vinciguerra use strict; use warnings; use LWP::UserAgent; # estado + cidade em formato snake case (minusculo e underline como espaço) my $config = { state => 'sp', city => 'sao_paulo' }; # iniciando novo objeto LWP::UserAgent my $ua = LWP::UserAgent->new; my $res = $ua->get("http://tempo.folha.com.br/$config->{state}/$config->{city}"); if ( $res->is_success ) { # obtendo a temperatura my ($temp) = $res->content =~ m#<div class="temperature">\s*<strong>(\d*).*</strong>#; print "Temperatura: ${temp}C"; } else { # erro print "Erro: Não foi possível obter a temperatura!"; }
Buscar Traduções no Google Translate
Descobrir operadora de celular
PDF completo com todas as páginas do Diário Oficial do Estado de Goiás
Nenhum comentário foi encontrado.
Crie alias para as tarefas que possuam longas linhas de comando - bash e zsh
Criando um gateway de internet com o Debian
Configuração básica do Conky para mostrar informações sobre a sua máquina no Desktop
Aprenda a criar músicas com Inteligência Artificial usando Suno AI
Entendendo o que é URI, URL, URN e conhecendo as diferenças entre POST e GET
Instalando Navegador Firefox no Debian 12
Bloqueando propagandas no Youtube e outros sites com o uBlocker Origin
Criando um Pen Drive Bootável no Linux
Integração entre o GLPI e o TEAMS (1)
Não existe o slackbuild do bash no repositório slackbuild? (3)
problemas com artefatos na instalação (26)
Como usar o WhatsApp no PC sem precisar escanear o qrcode ou utilizar... (5)