Módulos de Web no Perl

Neste artigo apresento alguns métodos para trabalhar com "tags" e "reg" em Perl de maneira simples e prática usando alguns módulos.

[ Hits: 16.689 ]

Por: C00L3R_ em 19/08/2008 | Blog: https://github.com/CoolerVoid


Usando TokeParser



Outro módulo bacana de trabalhar é o HTML::TokeParser. Com ele você pode retirar apenas o que quiser sem o uso de regex ou POG. Veja o exemplo:

use HTML::TokeParser;
my $file = shift;
my $p = HTML::TokeParser->new($file);
while ($p->get_tag('h1')) {
   &nbso;print $p->get_text(), " ";
}

Executamos o comando abaixo:

perl prog.pl index.html

Abaixo o conteúdo do arquivo index.html:

<!DOCTYPE HTML PUBLIC "-//IETF//DTD HTML//EN">
<html>
<head><title>Test HTML Page</title>
</head>
<body>
<h1>The first major item</h1>
<h2>Section 1.1</h2>
<p>Some text<p>
<h2>Section 1.2</h2>
<h3>Section 1.2.1</h3>
<p>blah</p>
<h3>Section 1.2.2</h3>
<p>blah</p>
<h1>Another major header</h1>
<h2>Section 2.1</h2>
<h3>Section 2.1.1</h3>
<h3>Section 2.1.2</h3>
<h2>Section 2.2</h2>
</body>
</html>

Veja a saída do programa:

The first major item
Another major header

Ou seja, ele retirou o que estava entre as tags "h1". Bem simples de usar.

Fico por aqui mesmo com o artigo porque tem muitos outros módulos.

Informações sobre outros módulos, vide CPAN.

Página anterior    

Páginas do artigo
   1. Introdução a alguns módulos Web
   2. Usando LinkExtor
   3. Usando TokeParser
Outros artigos deste autor

Ponteiros - Saindo de Pesadelos

Usando o PF - Packet Filter

Usando OpenBSD como desktop

BSD Sockets em linguagem C

Banco de dados orientados a documentos

Leitura recomendada

A forma correta de se instalar módulos Perl

Programando uma Intranet com Apache, MySQL e Perl (parte 2)

Twittando com o Perl (parte 1)

Catalyst Framework Perl - Parte III

Programando em Perl (parte 1)

  
Comentários
[1] Comentário enviado por removido em 19/08/2008 - 16:59h

muito bom .....
Tony posso te fazer umas perguntas,
o OpenBSD já está usando o driver nvidia ??????
E desktop 3d, algum dia vai ter ????????????

vlw ....

[2] Comentário enviado por Cooler_ em 19/08/2008 - 19:32h

fica dificil,
lembra da meta do openBSD "no blobs"
ou seja sem drivers proprietarios que não mostra a source he o caso da Nvidia e da ATI
OpenBSD da suporte para drivers Open Source como o drive da Ralink...
quanto ao desk 3d acho dificil viu soh se a Nvidia liberar source de um codigo fonte de um
dos seus muitos drivers, se tiver algum ja deve tar rolando no OpenBSD
abraço

[3] Comentário enviado por renato.leite em 19/08/2008 - 19:44h

bem legal cooler, agora voce ta la no boteco e aki no vivaolinux tbm... xD


Contribuir com comentário




Patrocínio

Site hospedado pelo provedor RedeHost.
Linux banner

Destaques

Artigos

Dicas

Tópicos

Top 10 do mês

Scripts