Está en la página 1de 16

COLETA DE CORPUS

NA WEB
CURSO BÁSICO
José Antonio V. S. de M. Oliveira
Aula 3 – Maio/2010
Revisão da Aula 2
 HTML escape codes
 Uma maneira de se conseguir representar caracteres
que não estão na tabela ASCII usando somente
caracteres da tabela ASCII.
 é = é
 Ü = Ü
 € = €

 Lista completa:
 http://www.escapecodes.info/
É preciso ver o código fonte da página a ser coletada
para saber se o texto está codificado dessa forma.
Revisão da Aula 2
 Feeds RSS e Atom
 Em geral, sites de periódicos fornecem um arquivo
chamado Feed, que constantemente é atualizado com
as últimas notícias.
 Esse arquivo pode estar em 3 formatos diferentes:
 RSS 1.0 (RDF Site Summary)
 RSS 2.0 (Really Simple Syndication)
 Atom

 Os programas agregadores de Feed (Google Reader, por


exemplo) baixam esse arquivo periodicamente e
exibem as últimas notícias daquele periódico.
Revisão da Aula 2
 Os feeds podem ser completos ou incompletos
 Os completos trazem todo o conteúdo da notícia. São raros
nos jornais e comuns nos blogs.
 Os incompletos trazem uma chamada para a notícia e o
link para o site do periódico.
 O script que coleta os dados de um feed deve levar
em conta o formato do arquivo (RSS 1.0, RSS 2.0 ou
Atom) e se o feed é completo ou incompleto.
 No caso de feeds incompletos, é preciso que o script visite
o link de cada notícia para coletar seu texto.
 Ainda é preciso levar em conta a codificação dos
caracteres do texto oferecido no feed.
Expressões Regulares
 Livro do “piazinho”
 Expressões Regulares – Uma abordagem divertida.
 Site www.piazinho.com.br

 Testando suas ERs


 Site http://jsregex.com/
 O que são?
 “Expressão regular é um método formal de se especificar
um padrão de texto”
 “ERs são meta caracteres que casam um padrão.”
 Exemplo: A ER [gpr]ato “casa” com gato, pato e rato.
Expressões Regulares
 Extrair textos de arquivos HTML ou XML
pode ser uma tarefa muito simples com
expressões regulares.
Expressões Regulares
 Exemplo:
 Casando uma ER com um código

HTML
Expressões Regulares
 Não se assuste com as ER.

 “As expressões são apenas pequenos


pedacinhos simples que, agrupados, formam algo
maior. O importante é você compreender bem
cada um individualmente, e depois apenas
lê-los em sequência.”

 “Lembre-se do alfabeto: são apenas letras...”


 μεταμόρφωση , σπουργίτι, Ελλάδα,
 metamorfose, spourgíti, Elláda,
Expressões Regulares
Metacaracteres
 Ponto: .
 Está sempre à procura de um casamento,
não importa com quem seja.

 Exemplo:
 .ato casa com qualquer palavra de quatro
letras terminando com “ato”
 “Vou ver se cato o pato que fugiu do gato
entrando no mato. E olha que o gato é pacato.”
Expressões Regulares
Metacaracteres
 Lista: [...]
 A lista sabe exatamente com quem casar
 Guarda dentro de si os caracteres permitidos

 Exemplo:
 [gpc]ato casa com qualquer palavra de quatro
letras começando com “g”, “p” ou “c” e
terminando com “ato”
 “Vou ver se cato o pato que fugiu do gato
entrando no mato. E olha que o gato é pacato.”
 Dentro da lista todo mundo é normal!
Expressões Regulares
Metacaracteres
 Lista: [...]
 Definindo Intervalos
 [0123456789][0123456789] casa com dois números
de zero a nove (76, por exemplo).
 [0-9][0-9] faz o mesmo efeito.
 [A-Za-z0-9] casa com qualquer letra maiúscula ou
minúscula, ou números de zero a nove.
 Como casar um hífen?
 Basta colocá-lo como último item da lista.
 Assim, [0-9-] casa com qualquer número ou um hífen.
 Os intervalos respeitam a tabela ASCII
Expressões Regulares
Metacaracteres
 Lista: [...]
 Ainda sobre os intervalos (Padrão POSIX)
 [A-Z] não casa acentos [:upper:] sim.
 [[:upper:]] = Letras maiúsculas
 [[:lower:]]= Letras minúsculas
 [[:alpha:]] = Letras maiúsculas ou minúsculas
 [[:alnum:]] = Letras e números
 Para casar um colchete que fecha, coloque-
o no início da lista.
 []0-9]casa com qualquer número e um
colchete que fecha.
Expressões Regulares
Metacaracteres
 Lista Negada: [^...]
 Sabe com quem não quer casar.
 [^0-9] casa com qualquer coisa que não
seja um número.
 [^[:alpha:]] casa com qualquer coisa que
não seja uma letra maiúscula ou minúscula
(inclusive as letras acentuadas).
Expressões Regulares
Metacaracteres Quantificadores
 Opcional: ?
 Informa que a entidade anterior não
importa se aparece ou não.
 patos? casa com “pato” ou com “patos”, já
que o s é opcional.
 0?[0-9] casa com um número precedido ou
não de zero. Ex.: 01, 2, 00 etc.
 [a-z][0-9]? casa com letras minúsculas
seguidas ou não de números. Ex.: a2, j4, b,
b0 etc.
Expressões Regulares
Metacaracteres
Quantificadores
 Asterisco: *
 O asterisco informa que a entidade anterior pode
aparecer nenhuma, uma ou mais vezes.
 bi*p casa com bp, bip, biip, biiiiip, biiiiiiiiiiiiip etc.
 a[0-9]* casa com a, a1, a31, a7534, a22 etc.
 ATENÇÃO: O asterisco é guloso!
 Ele SEMPRE casa com a quantidade máxima que conseguir.
 [ar]*a casa com arara, ararararaaaa, aaaara etc.
 Cuidado: Às vezes o * casa com mais do que esperávamos que
ele casasse.
Expressões Regulares
Metacaracteres
Quantificadores
 Asterisco: *
 Continuando: O asterisco é guloso!
 <p>.*</p> não casa com um parágrafo só, se
houver mais de um parágrafo no HTML.
 <p>Meu primeiro parágrafo</p><p>Meu segundo
parágrafo</p>
 No caso acima ele vai casar com os dois parágrafos, o
que não é o que nós queríamos.
 .* é um curinga que casa qualquer coisa em um
número qualquer de vezes (sempre máximo)

También podría gustarte