PDA

Ver la Versión Completa : Tomar tablas HTML como datos


sarackganda
23-05-2003, 00:13:55
Hola Foro!
Quiciera saber si alguien conoce de algún componente/herramienta que permita tomar tablas HTML de la red y que las interprete como datos para poder mostrarlas en un Grid, e visto que en hay una OCX de Excel llamada SpreadSeet que convierte instantáneamente una página Web a un Excel y lo hace muy bien.

Muchas Gracias :D :D

__cadetill
23-05-2003, 01:16:44
Si puedes exportarlo a Excel, solo tienes que crearte un ODBC para atacar a Excel y ya lo puedes tratar como una tabla

Espero te sirva

sarackganda
24-05-2003, 00:58:21
La idea es evitar utilizar ese tipo de soluciones, lo que quiero es buscar, o armar en su defecto, un parser de HTML escrito 100% en Delphi.

Chagracias!

__cadetill
26-05-2003, 10:50:39
Pues si una determinada pagina web tiene una tabla, lo unico que necesitas es algun conocimiento de HTML para saber interpretar la tabla y, abrir el fichero en formato texto y hacer una lectura de el (HTML es texto puro y duro)

Una tabla empieza por <TABLE> y termina por </TABLE>
Una fila empieza por <TR> y termina por </TR>
Una columna empieza por <TD> y termina por </TD>

La primera fila seran los campos y las demas, los datos

Tendrias que mirar de localizar la etiqueta <TABLE> y a partir de ahi, ir leyendo

Claro que seguramente no sera tanfacil, pero podrias mirar de empezar a hacer alguna prueba con esto

Espero te sirva

sarackganda
29-05-2003, 18:44:57
Gracias cadetill, ya había empezado a hacer esto anteriormete, pero cuando estaba trabajando me pregunté a mi mismo si no restaba reinventando la rueda, pensé que posiblemente ya existiera esto en algún lado y por eso dejé el mensaje en el foro.
Nuevamente, Muchas Gracias!

sakuragi
18-08-2005, 01:48:09
sarackganda

disculpa

donde puedo bajar ese componte para parar html a excel?

si no es mucha molestia

gracias


saludos

delphi.com.ar
18-08-2005, 14:49:27
...e visto que en hay una OCX de Excel llamada SpreadSeet que convierte instantáneamente una página Web a un Excel y lo hace muy bien...
Pertenece a los "Microsoft Office Web Controls", necesitas tener instalado Office!
(OWC*.DLL, MSOWC.DLL)

Saludos!

sakuragi
18-08-2005, 17:32:58
gracias por el aporte

ahi forma de manipularlo por delphi?


saludos

delphi.com.ar
18-08-2005, 18:10:50
Si!... importando la librería: [Project \ Import Type Library] + Buscar en la lista "Microsoft Web Components"....

Saludos!

mamcx
18-08-2005, 18:31:42
Precisamente en el foro de ThirdyParty de Borland salio esta pregunta, he aqui algunos componentes que te pueden ayudar:

http://www.compnet101.com/atagparser/

Un ejemplo que postearon en el foro:



procedure TForm1.ATagParserTag(Sender: TObject; Tag: TTagElement;
var Abort: Boolean);
var
Index: Integer;
begin
Index := FindTagID(Tag.Hash);
Case Index Of
TID_TABLE : { the table tag }
Begin
Case Tag.ElementType Of
etSimpleTag, etComplexTag :
// the < table > tag
// Inc(TableCount) or you can create an instance
// of TTagElement, assign the Tag to it and push
// it on an object stack
etEndTag :
// the < / table > tag
End;
End;
TID_TD : { the table data tag }
Begin
Case Tag.ElementType Of
etSimpleTag, etComplexTag :
// the < td > tag
etEndTag :
// the < /td > tag
End;
End;
TID_TR : { the table row tag }
Begin
Case Tag.ElementType Of
etSimpleTag, etComplexTag :
// the < tr > tag
etEndTag :
// the < / tr > tag
End;
End;
End;
end;



http://www.yunqa.de/delphi/htmlparser/

Estos dos de pago, pero a bajo precio. El segundo lo he evaluado y quizas lo compre mas tarde...

Tambien, un ejemplo de como hacerlo automatizando Explorer:


uses MSHTML_TLB;

wb: TWebBrowser;

wb.navigate(your html file);

in wb.OnDocumentComplete write something like:

var
doc: IHTMLDocument2;
btnText: string;
begin
doc := wb.document as IHTMLDocument2;
//now find your element, let's say you want the text of the first button in
the file
btnText := ((doc.tags('button') as IHTMLElementCollection).item(0, '') as
IHTMLButtonElement).InnerText;


Ahora la vuelta para cargar la tabla es mas complicada... te toca mirar las ayudas en MSDN....

Seguro habra otros parsers por ahi... mirate en torry.net...

sakuragi
18-08-2005, 23:55:28
hola que tal de nuevo

bueno ya logre importar de html a excel por medio del microsoft web component

esto lo quiero haser

ya que estoy utulisando el componete cxGrid y tiene una opcion para exportar a excel exporta bien pero tiene un problema los los subnodos no me los pasa

entonses tabien tiene una opcion para exportar a html lo cual en esto si se exportan todo tal y como esta en el cxGrid con ti subnodos

entonses yo quise haser esto para pasar del html a excel, pero tambien me funciono bien pero en este caso todos los subnodos me los puso en una celda =S


bueno

de hante mano gracias