Club Delphi  
    FTP   CCD     Buscar   Trucos   Trabajo   Foros

Retroceder   Foros Club Delphi > Principal > Delphi para la web
Registrarse FAQ Miembros Calendario Guía de estilo Temas de Hoy

Grupo de Teaming del ClubDelphi

Respuesta
 
Herramientas Buscar en Tema Desplegado
  #1  
Antiguo 22-02-2013
PacoPepe PacoPepe is offline
Miembro
 
Registrado: ene 2006
Ubicación: Córdoba, España
Posts: 86
Poder: 19
PacoPepe Va por buen camino
Ejecutar repetidamente un script en TWebBrowser

Quiero obtener información de una página web que dispone de un script en JavaScript

Cargo la página con TWebBrowser, monto la URL correcta y la paso con Navigate. Luego genera una tabla HTML y con una función que he encontrado obtengo la información que contiene

¿Pero como hago para saber cuando ha cargado la página totalmente, para pasarle después la URL? y como vuelvo a cargar la segunda vez la página, ya que la primera lo hago con Show, pero la segunda he probado con Update y Refresh pero no he obtenido nada

Un saludo
Responder Con Cita
  #2  
Antiguo 23-02-2013
beginner01 beginner01 is offline
Miembro
NULL
 
Registrado: mar 2011
Ubicación: República Dominicana
Posts: 181
Poder: 14
beginner01 Va por buen camino
Hola.

Cita:
Empezado por PacoPepe Ver Mensaje
¿Pero como hago para saber cuando ha cargado la página totalmente, para pasarle después la URL?
Para saberlo usa el evento OnDocumentComplete del TWebBrowser. Referencia.

Cita:
y como vuelvo a cargar la segunda vez la página, ya que la primera lo hago con Show, pero la segunda he probado con Update y Refresh pero no he obtenido nada
Esto no me queda muy claro. Revisa los eventos del TWebBrowser ,que seguro encontraras lo que necesitas.
Responder Con Cita
  #3  
Antiguo 23-02-2013
PacoPepe PacoPepe is offline
Miembro
 
Registrado: ene 2006
Ubicación: Córdoba, España
Posts: 86
Poder: 19
PacoPepe Va por buen camino
Ya lo he conseguido

La función para leer los datos de la tabla HTML es

Código Delphi [-]
ovTable:= WebBrowser1.OleObject.Document.all.tags('TABLE').item(0);
      try
        if not VarIsNull(ovTable) then begin
            for i := 1 to (ovTable.Rows.Length - 1) do
                for j := 0 to (ovTable.Rows.Item(i).Cells.Length - 1) do begin
                  try
                      Memo1.Lines.Append(ovTable.Rows.Item(i).Cells.Item(j).InnerText);
                  except end;
                end;
        end;
      except  end;

Suponiendo que tenemos WebBrowser1 y añadimos los datos leidos al Memo1.
He añadido control de excepciones por si algo falla que siga a la siguiente.

i empieza en 1 porque en mi caso la tabla tiene cabecera y no la necesito, sino i:= 0

Para esperar a que termine de cargar la página completamente

Código Delphi [-]
WebBrowser1.Navigate(URL);
while WebBrowser1.ReadyState < READYSTATE_COMPLETE do
        Application.ProcessMessages;

Un saludo a todos

Última edición por PacoPepe fecha: 23-02-2013 a las 13:54:00. Razón: Se me olvido
Responder Con Cita
Respuesta



Normas de Publicación
no Puedes crear nuevos temas
no Puedes responder a temas
no Puedes adjuntar archivos
no Puedes editar tus mensajes

El código vB está habilitado
Las caritas están habilitado
Código [IMG] está habilitado
Código HTML está deshabilitado
Saltar a Foro

Temas Similares
Tema Autor Foro Respuestas Último mensaje
Ejecutar Script con IBSQL Loviedo Firebird e Interbase 2 12-11-2011 00:11:38
Ejecutar script toni.vi Conexión con bases de datos 6 19-02-2009 12:51:53
Ejecutar Script SQL con DELPHI patay SQL 1 06-08-2007 18:12:26
ADO: Error al ejecutar una consulta repetidamente sostro Conexión con bases de datos 6 31-08-2004 17:43:50
Componente ejecutar Script buitrago Conexión con bases de datos 3 27-11-2003 09:40:54


La franja horaria es GMT +2. Ahora son las 09:18:34.


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
Copyright 1996-2007 Club Delphi