transformar html em xml

564 views
Skip to first unread message

Edison Ferreira

unread,
Dec 19, 2008, 1:09:43 PM12/19/08
to LISTA PHP
como eu posso pegar um relatorio qualquer gerado em html e converter
pra xml??? Uso linux e aceito até usar um programa de modo texto, e
sei como fazer isso, só preciso saber qual o programa e como utilizo
ele?

Rodrigo Prestes

unread,
Dec 19, 2008, 2:48:54 PM12/19/08
to list...@googlegroups.com
sugiro usares expressões regulares para isso...
aí podes usar o programa que mais lhe convier... ou mesmo só PHP

Rodrigo Trindade Prestes
Bacharelando em Ciência da Computação - UFPel - 8º Semestre

Edison Ferreira

unread,
Dec 19, 2008, 2:50:55 PM12/19/08
to LISTA PHP
tu diz, ler o arquivo e depurar com expressoes regulares, linha a
linha??

On 19 dez, 17:48, "Rodrigo Prestes" <rtpres...@gmail.com> wrote:
> sugiro usares expressões regulares para isso...
> aí podes usar o programa que mais lhe convier... ou mesmo só PHP
>
> Rodrigo Trindade Prestes
> Bacharelando em Ciência da Computação - UFPel - 8º Semestre
>
> On Fri, Dec 19, 2008 at 4:09 PM, Edison Ferreira <
>

Bernardo Vieira

unread,
Dec 20, 2008, 9:40:47 AM12/20/08
to list...@googlegroups.com
Edison,
Se o html que você está lendo é bem formado você pode usar o DOMDocument
(http://www.php.net/manual/en/domdocument.loadhtmlfile.php).
Recentemente migrei alguns crawlers que tinha que usavam expressões
regulares para o DOMDocument, o código ficou bem mais limpo (ninguém
merece ler um método cheio de expressões regulares :P) e bem mais rápido
(preg_match e preg_match_all são relativemente lentos). Outra coisa que
é muito legal é que você pode usar XPath para extrair seus dados
(http://www.php.net/manual/en/class.domxpath.php), dessa forma se você
tem que lidar com estruturas diversas de html para chegar até o dado que
te interessa você pode criar uma classe pai que faz o trabalho de
carregar, garimpar e persistir os dados e, para cada tipo diferente de
documento que você tem que lidar, extender esta classe alterando apenas
os xpath necessários para chegar aos dados.

Edison Ferreira

unread,
Dec 21, 2008, 9:08:20 AM12/21/08
to LISTA PHP
Eu desisti do html e passei a converter o arquivo .pdf com a
ferramenta pdftohtml que tb gera xml... ai ele me gera algumas linhas
assim:
01950401-2 01/07 LUIS CARLOS GRAS

e outras assim: (duas linhas reproduzidas)
ESPOLIO DE SARAIVA ALDO
BITTENCOURT

Nos dois casos, eu queria obter apenas os nomes, alguém tem alguma
idéia de como eu faria isso... as linhas estão dentro de um array, e
como podem ver, elas não tem um comportamento uniforme...
eu preciso tirar esse nome do

Laerte Mateus Rodrigues

unread,
Dec 22, 2008, 1:09:50 PM12/22/08
to list...@googlegroups.com
no seu PHP para criar XML faça assim
<?php
#faças os includes necessários...

ob_clean(); /*Limpa o buffer*/

setheader("Content-type:text/xml; charset=ISO-8859-1"); /*Tipo de saída agora é o XML*/
?>
<?xml version='1.0' type='ISO-8859-1'?>

<!-- Informação do XML -->



Espero ter ajudado, abraços

Leonardo C. Quadros

unread,
Dec 25, 2008, 11:07:32 PM12/25/08
to list...@googlegroups.com
Utilize o document type para XHTML 1.0 transitional
(ou strict, se preferir); mantenha o código válido e você terá XML.

2008/12/22 Laerte Mateus Rodrigues <laer...@gmail.com>:

--
___________________________________________________
Leonardo Cabral

"A marca do homem imaturo é que ele quer morrer nobremente por uma causa,
enquanto a marca do homem maduro é querer viver modestamente por uma."
- Jerome David Salinger

Leonardo C. Quadros

unread,
Dec 25, 2008, 11:11:12 PM12/25/08
to list...@googlegroups.com
...e é claro, não esqueça o prólogo XML:

<?xml version='1.0' type='ISO-8859-1'?>

2008/12/26 Leonardo C. Quadros <lcqu...@gmail.com>:

--
___________________________________________________
Leonardo Cabral
leo.c...@imasters.com.br
iMasters - Por uma Internet mais criativa e dinâmica
http://www.imasters.com.br/intercon/2008/

Reply all
Reply to author
Forward
0 new messages