Foros Club Delphi

Foros Club Delphi (https://www.clubdelphi.com/foros/index.php)
-   Varios (https://www.clubdelphi.com/foros/forumdisplay.php?f=11)
-   -   Capturar la primera linea de una web (https://www.clubdelphi.com/foros/showthread.php?t=92471)

gdlrinfo 07-11-2017 20:58:27

Capturar la primera linea de una web
 
Estimados así como dice el titulo necesito capturar la primera línea de una web he intentado con el componente webbrowser pero no he podido tienen alguna pista de como hacerlo desde ya muchas gracias.-
atte.-

Casimiro Notevi 07-11-2017 21:25:19

Seguramente será algo así:
Cita:

<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.1//ES" "http://www.w3.org/TR/xhtml11/DTD/xhtml11.dtd">

gdlrinfo 07-11-2017 21:26:40

Cita:

Empezado por Casimiro Notevi (Mensaje 522325)
Seguramente será algo así:

Muchas gracias por tu pronta respuesta no entiendo como aplicar eso en el código fuente usando el webbrowser perdón mi ignoracia .-

atte.--

gdlrinfo 07-11-2017 21:35:33

detalle:
 
A ver por ejemplo en www.google.com.ar la primera línea de la pagina es esta : <!doctype html><html itemscope="" itemtype="http://schema.org/WebPage" lang="es-AR"><head><meta content="IE=edge"

Bueno eso necesito capturarlo con Delphi para poder compararlo con otra pagina pero no se como hacerlo .-

atte.. Gonzalo-

roman 07-11-2017 22:56:17

De entrada, requerir la primera línea de una web no tiene mucho sentido. El código HTML es indiferente a las líneas, de manera que una página puede contener todo el código en una sóla línea.

Dicho lo anterior, una forma sencilla de obtener el contenido de una página web es usando el componente TIdHTTP de la biblioteca Indy, que suele incluirse con Delphi. Obtener el código es tan sencillo como:

Código Delphi [-]
var
  Contenido: String;

begin
  Contenido := IdHTTP1.Get('http://www.google.com.ar/');
end;

LineComment Saludos

gdlrinfo 07-11-2017 23:11:47

Cita:

Empezado por roman (Mensaje 522330)
De entrada, requerir la primera línea de una web no tiene mucho sentido. El código HTML es indiferente a las líneas, de manera que una página puede contener todo el código en una sóla línea.

Dicho lo anterior, una forma sencilla de obtener el contenido de una página web es usando el componente TIdHTTP de la biblioteca Indy, que suele incluirse con Delphi. Obtener el código es tan sencillo como:

Código Delphi [-]
var
  Contenido: String;

begin
  Contenido := IdHTTP1.Get('http://www.google.com.ar/');
end;

LineComment Saludos


Hola Roman muchas gracias por tu aporte te comento tomo la primer línea de una pagina especifica diseñada para eso ya que en la primer línea hay una fecha y ese es el dato que necesito comparar espero haberte despejado tu duda en cuanto a que sentido tenia desde ya muchas gracias por tu aporte ya voy a probar a ver que tal va .

andres_89 01-06-2022 06:14:31

Cita:

Empezado por roman (Mensaje 522330)
De entrada, requerir la primera línea de una web no tiene mucho sentido. El código HTML es indiferente a las líneas, de manera que una página puede contener todo el código en una sóla línea.

Dicho lo anterior, una forma sencilla de obtener el contenido de una página web es usando el componente TIdHTTP de la biblioteca Indy, que suele incluirse con Delphi. Obtener el código es tan sencillo como:

Código Delphi [-]
var
  Contenido: String;

begin
  Contenido := IdHTTP1.Get('http://www.google.com.ar/');
end;

LineComment Saludos


Hola, buen día a todos, les comento que esa función ya no sirve en últimas versiones de Embarcadero, en mi caso yo utilizo Embarcadero builder C++, y el código que siempre utilizaba para obtener un IP o string de una página era:

Código:

IdHTTP1->Get("http://www.trvx.com/iplookup/")
Ahora ya no funciona, sabrán como puedo resolverlo para seguir obteniendo el IP?.
Saludos.

dec 01-06-2022 08:29:17

Hola a todos,

Cita:

Empezado por andres_89 (Mensaje 547028)
[...] Ahora ya no funciona, sabrán como puedo resolverlo para seguir obteniendo el IP?.

Cuando dices "no funciona", ¿qué quieres decir? ¿No aparece ningún error?

Casimiro Notevi 01-06-2022 11:24:08

A mí me funciona, igual que esta: http://intitec.com/debug/getip.php y cualquier otra que devuelve la IP.

escafandra 01-06-2022 15:59:12

Si no te gustan los componentes siempre puedes usar la API como en este ejemplo


Saludos.

andres_89 01-06-2022 17:47:53

Hola a todos, el error que me salía era este:

Cita:

HTTP/1.1 403 Forbidden
Buscando por ahí, lo pude solucionar cambiando el "UserAgent" en el control TIdHTTP:

El que viene por defecto:
Código:

Mozilla/3.0 (compatible; Indy Library)
Lo cambie por:
Código:

Mozilla/4.0 (compatible; MSIE 6.0; Windows NT 5.1)
Y al final cambie a "True" la popiedad "HandleRedirects".

Ahora ya me funciona normal, estoy trabajando en el Embarcadero Community Edition, y lo tenía todo por defecto.

Gracias por sus comentarios.

dec 02-06-2022 08:46:27

Hola a todos,
Cita:

Empezado por andres_89 (Mensaje 547045)
Hola a todos, el error que me salía era este:

Buscando por ahí, lo pude solucionar cambiando el "UserAgent" en el control TIdHTTP:

El que viene por defecto:
Código:

Mozilla/3.0 (compatible; Indy Library)
Lo cambie por:
Código:

Mozilla/4.0 (compatible; MSIE 6.0; Windows NT 5.1)
Y al final cambie a "True" la popiedad "HandleRedirects".

Ahora ya me funciona normal, estoy trabajando en el Embarcadero Community Edition, y lo tenía todo por defecto.

Gracias por sus comentarios.

Está bien apuntarlo, porque, en efecto, esto del "user agent" es un problema relativamente común, al menos en mi experiencia. Por eso te comenté de ver si había algún error... pensando, precisamente, en el "user agent"...


La franja horaria es GMT +2. Ahora son las 17:43:09.

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