Club Delphi  
    FTP   CCD     Buscar   Trucos   Trabajo   Foros

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

Grupo de Teaming del ClubDelphi

Respuesta
 
Herramientas Buscar en Tema Desplegado
  #1  
Antiguo 18-04-2018
Avatar de Neftali [Germán.Estévez]
Neftali [Germán.Estévez] Neftali [Germán.Estévez] is offline
[becario]
 
Registrado: jul 2004
Ubicación: Barcelona - España
Posts: 18.289
Poder: 10
Neftali [Germán.Estévez] Es un diamante en brutoNeftali [Germán.Estévez] Es un diamante en brutoNeftali [Germán.Estévez] Es un diamante en bruto
Normalmente puedes hacerlo utilizando las Indy y su componente TIdHttp para realizar un post a la web con los parámetros que necesites.
En este hilo/Mensaje tienes un código de [dec] que se parece bastante a lo que necesitas. Se crea el componente, se pasan los parámetros y se envían con un POST.

De todas formas si haces una búsqueda en los foros, encontrarás otros hilos que hablan de temas similares porque es algo que ya hemos tratado en otras ocasiones:

http://www.clubdelphi.com/foros/show...35&postcount=5
http://www.clubdelphi.com/foros/show...6&postcount=12
http://www.clubdelphi.com/foros/showthread.php?t=37050
https://www.clubdelphi.com/foros/showthread.php?t=72881

Y aquí un mensaje mio de hace un tiempo con una duda similar, donde puedes encontrar código y ejemplos, y la solución que otros compañeros me ayudaron a encontrar.
__________________
Germán Estévez => Web/Blog
Guía de estilo, Guía alternativa
Utiliza TAG's en tus mensajes.
Contactar con el Clubdelphi

P.D: Más tiempo dedicado a la pregunta=Mejores respuestas.
Responder Con Cita
  #2  
Antiguo 19-04-2018
manelb manelb is offline
Miembro
 
Registrado: mar 2017
Posts: 281
Poder: 8
manelb Va por buen camino
Unhappy

Saludos a todos y perdón por mi ignorancia en el tema...

Este sistema funcionaria con cualquier web donde se espera un valor y devuelve uno o varios resultados??

Mi caso concreto es el de la web del Ministerio de Agricultura donde se consulta el registro de un producto fitosanitario y devuelve el registro, el nombre del producto, la composición y el titular o fabricante de dicho producto.

La web es la siguiente y un posible registro a consultar seria por ejemplo este: 11179

Hace unos meses me puse en contacto con el Ministerio de Agricultura para preguntar si había algún webservice donde poder realizar estas consultas y me respondieron que la única forma era a través del enlace que os he indicado y que debía consultarse directamente a través de la web.
Con este método que proponéis se podría solucionar, y el resultado seria similar a la utilización de un servicio web. Estoy diciendo alguna barbaridad??
Responder Con Cita
  #3  
Antiguo 19-04-2018
Avatar de Neftali [Germán.Estévez]
Neftali [Germán.Estévez] Neftali [Germán.Estévez] is offline
[becario]
 
Registrado: jul 2004
Ubicación: Barcelona - España
Posts: 18.289
Poder: 10
Neftali [Germán.Estévez] Es un diamante en brutoNeftali [Germán.Estévez] Es un diamante en brutoNeftali [Germán.Estévez] Es un diamante en bruto
Pues basándote en los códigos que hemos puesto puedes hacerlo sin problemas.
Crea un formulario con 1 TButton y 2 TMemo.
Y utiliza el siguiente código:

Código Delphi [-]
procedure TForm2.Button2Click(Sender: TObject);
var
  http: TIdHttp;
  params: TStrings;
  respuesta: string;
const
  url = 'http://www.mapama.gob.es/es/agricultura/temas/sanidad-vegetal/productos-fitosanitarios/registro/productos/proexi.asp';
begin
  http := TIdHTTP.Create(Self);
  params := TStringList.Create;
  try
    params.Add('e=0');
    params.Add('cod=11179');
    params.Add('nom=');
    respuesta := http.Post(url, params);
    Memo2.Lines.Text := Respuesta;

    BuscarDatosRespuestas(respuesta, '', '');
    BuscarDatosRespuestas(respuesta, 'tit.asp?id=50000">', '');

  finally
    http.Free;
    params.Free;
  end;
end;

Verás que el primer TMemo contiene el código HTML de la página de respuesta que necesitas.
A partir de ahí puedes hacer un parser simple conuna rutina como esta para obtener los datos que necesitas:

Código Delphi [-]
function TForm2.BuscarDatosRespuestas(ARespuesta:string; Tag1, Tag2:string):string;
var
  str:String;
  i, j:integer;
begin
  repeat
    i := AnsiPos(Tag1, ARespuesta);
    if (i > 0) then begin
      str := Copy(ARespuesta, (i + Length(Tag1)), Length(ARespuesta));
      ARespuesta := Str;
      j := AnsiPos(Tag2, Str);
      if (j > 0) then begin
        Str := Copy(Str, 1, j-1);
        Memo1.Lines.Add(Str);
      end;
    end;
  until (i = 0);
end;

Te adjunto el proyecto de ejemplo.
Archivos Adjuntos
Tipo de Archivo: zip Consultar_Web_Parametros.zip (6,2 KB, 9 visitas)
__________________
Germán Estévez => Web/Blog
Guía de estilo, Guía alternativa
Utiliza TAG's en tus mensajes.
Contactar con el Clubdelphi

P.D: Más tiempo dedicado a la pregunta=Mejores respuestas.
Responder Con Cita
  #4  
Antiguo 19-04-2018
Dark_Code Dark_Code is offline
Miembro
NULL
 
Registrado: ene 2018
Posts: 11
Poder: 0
Dark_Code Va por buen camino
Cita:
Empezado por Neftali [Germán.Estévez] Ver Mensaje
Normalmente puedes hacerlo utilizando las Indy y su componente TIdHttp para realizar un post a la web con los parámetros que necesites.....
Hola, e utilizado este codigo para iniciar sesión del foro desde delphi, pero lo que pasa es que al loguearme osea poner el usuario y contraseña, no se puede conectar al servidor.

Este es el link del foro:
Código Delphi [-]
worldhack.net/foro/login.php

MI CUENTA DEL FORO:
USUARIO: caaf95
CONTRASEÑA: clubdelphi

Ahi esta mi source, espero de tu ayuda a que pueda conectarme correctamente al foro desde delphi. Muchas Gracias de antemano.
Archivos Adjuntos
Tipo de Archivo: rar AutoWeb.rar (3,9 KB, 6 visitas)
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
necesito ayuda alopezikari Varios 1 04-05-2010 21:54:57
Necesito ayuda MrCuCo Varios 2 24-03-2010 03:35:39
Necesito Ayuda vicoxl16 Internet 1 03-01-2010 20:58:35
Necesito ayuda RoyTan Conexión con bases de datos 1 27-08-2006 06:23:15
Necesito ayuda!! DiRHoP Varios 7 16-09-2005 02:44:42


La franja horaria es GMT +2. Ahora son las 21:57:39.


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