Foros Club Delphi

Foros Club Delphi (https://www.clubdelphi.com/foros/index.php)
-   Varios (https://www.clubdelphi.com/foros/forumdisplay.php?f=11)
-   -   Tomar tablas HTML como datos (https://www.clubdelphi.com/foros/showthread.php?t=738)

sarackganda 23-05-2003 00:13:55

Tomar tablas HTML como datos
 
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

Cita:

Empezado por sarackganda
...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:

Código Delphi [-]
 
  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:

Código Delphi [-]
  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


La franja horaria es GMT +2. Ahora son las 19:54:41.

Powered by vBulletin® Version 3.6.8
Copyright ©2000 - 2024, Jelsoft Enterprises Ltd.
Traducción al castellano por el equipo de moderadores del Club Delphi