PDA

Ver la Versión Completa : Capturar la primera linea de una web


gdlrinfo
07-11-2017, 20:58:27
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í:
<!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
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
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:


var
Contenido: String;

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


LineComment Saludos

gdlrinfo
07-11-2017, 23:11:47
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:


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
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:


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:

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,


[...] 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 (https://www.clubdelphi.com/foros/showthread.php?p=343164&highlight=InternetReadweb#post343164)


Saludos.

andres_89
01-06-2022, 17:47:53
Hola a todos, el error que me salía era este:

HTTP/1.1 403 Forbidden

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

El que viene por defecto:
Mozilla/3.0 (compatible; Indy Library)

Lo cambie por:
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,
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:
Mozilla/3.0 (compatible; Indy Library)

Lo cambie por:
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"...