Club Delphi  
    FTP   CCD     Buscar   Trucos   Trabajo   Foros

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

Grupo de Teaming del ClubDelphi

Respuesta
 
Herramientas Buscar en Tema Desplegado
  #1  
Antiguo 25-08-2016
fqm33 fqm33 is offline
Miembro
NULL
 
Registrado: ago 2016
Posts: 18
Poder: 0
fqm33 Va por buen camino
buenos días, no les había podido contestar (ni agradecer), para casimiro y delphius, les comento, mas detalladamente el proceso
se ingresa a la pagina
la empresa propietaria de la web, le entrega un token al usuario este puede ser físico o virtual, dicho token ya tiene un usuario base, y la contraseña se genera cada vez que ingreso, pues el token genera contraseñas cada varios segundos para dicho usuario, por lo tanto ese paso no se puede automatizar pues el dato se debe ingresar respecto a la contraseña generada. hasta ahí no tengo problema,

luego de esto doy click en siguiente, y de ahí en adelante es cuando debo automatizar el proceso que es el siguiente:
escoger una opción del menú y del submenu (que siempre son las mismas - (hacer click en las opciones).
ingreso tipo de documento de una lista desplegable, numero de documento, nombre y apellidos
hago click en aceptar
se despliega otra pantalla
ingreso un numero de 17 dígitos pero en formato texto
otros datos como vendedor, dirección, ciudad, departamento, y
se hace click en aceptar
el sistema de la pagina con esa información me arroja otro numero en formato texto de diez dígitos,
ese dato lo debo tomar y grabar en mi tabla de excel desde donde estoy enviándole los datos a la pagina

así debe repetirse con todas las filas del archivo de excel hasta que termine, dicho archivo normalmente tiene de 5000 a 10000 registros sin embargo puede llegar el momento que el archivo a leer tenga menos de 1000.
la dirección de la pagina se las podría enviar pero de manera privada no por el foro, indiquen sus dos correos o la forma de hacerlo, sin embargo el solo les mostraría la pagina donde se debe ingresar el usuario y contraseña. como comentario final estoy leyendo una guía de Indy. muchas gracias por su colaboracion
Responder Con Cita
  #2  
Antiguo 25-08-2016
Avatar de Delphius
[Delphius] Delphius is offline
Miembro Premium
 
Registrado: jul 2004
Ubicación: Salta, Argentina
Posts: 5.582
Poder: 25
Delphius Va camino a la fama
Cita:
Empezado por fqm33 Ver Mensaje
luego de esto doy click en siguiente, y de ahí en adelante es cuando debo automatizar el proceso que es el siguiente:
escoger una opción del menú y del submenu (que siempre son las mismas - (hacer click en las opciones).
ingreso tipo de documento de una lista desplegable, numero de documento, nombre y apellidos
hago click en aceptar
se despliega otra pantalla
ingreso un numero de 17 dígitos pero en formato texto
otros datos como vendedor, dirección, ciudad, departamento, y
se hace click en aceptar
el sistema de la pagina con esa información me arroja otro numero en formato texto de diez dígitos,
ese dato lo debo tomar y grabar en mi tabla de excel desde donde estoy enviándole los datos a la pagina

así debe repetirse con todas las filas del archivo de excel hasta que termine, dicho archivo normalmente tiene de 5000 a 10000 registros sin embargo puede llegar el momento que el archivo a leer tenga menos de 1000.
la dirección de la pagina se las podría enviar pero de manera privada no por el foro, indiquen sus dos correos o la forma de hacerlo, sin embargo el solo les mostraría la pagina donde se debe ingresar el usuario y contraseña. como comentario final estoy leyendo una guía de Indy. muchas gracias por su colaboracion
¡Vaya lio de proceso te espera!
Pues como he dicho, deberás aplicar un tanto de ingeniería inversa... examina el HTML que te regresa el server para ver como está presentada la página. También deberás hacer uso de las herramientas de desarrollor que ofrecen Firefox y/o Chrome para examinar que parámetros, orden, y como se pasan los valores...

Por ejemplo, tomemos esa lista desplegable para el tipo de DNI. En el HTML deberías ver algo como esto:

<select name="Tipo DNI">
<option value="1">(DNI) Documento Nacional de Identidad</option>
<option value="2">(LE) Libreta de Enrolamiento</option>
<option value="3">(LC) Libreta cívica</option>
<option value="4">Pasaporte extrangero</option>
</select>

El ejemplo está inspirado en el sistema Argentino.

Bueno, entonces ahora con la herramienta de Chrome para desarrolladores revisas la URL decodificada devuelta... probando con las diferentes opciones... Digamos que tu seleccionas LE, y ves un parámetro con nombre medio raro pIdType (es una manera de despistar a los curiosos del nombre real) y que justo recibió el valor 2. Repites el proceso cambiando opciones y así vas viendo si es una coincidencia.
Hagamos de cuenta que efectivamente el pIdType se corresponde al DNI y lo que se termina pasando es el valor asociado a <option>

Eso deberás ir haciendo para todo los parámetros... Pero en cuanto veas algo como OIUBKOJL224%e3$ ¡La tienes jodida! ¡Es un dato que va cifrado o vaya a saber de donde lo sacó!
Si tienes suerte, todo va sin cifrar y ya tienes ideas de como armar una URL y pasarle los valores a cada parámetro.

El trabajo final que te queda es obtener el HTML que te regresa y estudiarlo para recuperar ese número de 10 cifras.
Acá debo hacer una advertencia: No necesariamente el HTML que te devuelve Indy será igual al que veas con Firefox por ejemplo. ¿Porqué? Porque Indy devuelve el HTML en "original"... con sus posibles erratas de parte del desarrollador al elaborar el sitio mientras que FF, Chrome, Opera, y los demás van a tratar de armar el HTML de la mejor manera que cumpla con el estándar W3C. Un buen ejemplo: los navegadores van a tratar de poner los tags de cierre a las etiquetas opcionales.

Ya he dicho bastante, con esto deberás tener una buena idea de como encarar el trabajo.
Más no te podemos ayudar.

Saludos,
__________________
Delphius
[Guia de estilo][Buscar]
Responder Con Cita
  #3  
Antiguo 26-08-2016
fqm33 fqm33 is offline
Miembro
NULL
 
Registrado: ago 2016
Posts: 18
Poder: 0
fqm33 Va por buen camino
Excelente, muchas gracias, encontré un archivo de indy. parece que están todos lo comandos, (voy en la pagina 300 de mas de 3000), sin embargo no tiene ejemplos, este tema me esta dando tan duro como cuando quise hacer por primera vez una conexión a base de datos sin el asistente del ADO, me demore pero lo hice espero que con este me pase lo mismo. ya encontré la lista desplegable, del tipo de documento. en el código fuente de la pagina, muchas gracias, por la orientación,
Responder Con Cita
  #4  
Antiguo 27-08-2016
Avatar de Delphius
[Delphius] Delphius is offline
Miembro Premium
 
Registrado: jul 2004
Ubicación: Salta, Argentina
Posts: 5.582
Poder: 25
Delphius Va camino a la fama
Cita:
Empezado por fqm33 Ver Mensaje
Excelente, muchas gracias, encontré un archivo de indy. parece que están todos lo comandos, (voy en la pagina 300 de mas de 3000), sin embargo no tiene ejemplos, este tema me esta dando tan duro como cuando quise hacer por primera vez una conexión a base de datos sin el asistente del ADO, me demore pero lo hice espero que con este me pase lo mismo. ya encontré la lista desplegable, del tipo de documento. en el código fuente de la pagina, muchas gracias, por la orientación,
¿Comandos?
No hay ningún comando.
Me di cuenta que estás bastante perdido en cuanto leí la palabra "comando".
Esto es Delphi, Object Pascal; no hay comandos.
Lo que hay son clases, objetos, y lo que tu dices "comandos" son los métodos (funciones y/o procedimientos) que ofrecen las clases.

Si quieres hacer esto en serio, entonces toma las cosas en serio y empieza a utilizar los conceptos como corresponden. Evidentemente no vienes de una formación previa. Sugiero que leas La Cara Oculta de Delphi 4... te ayudará a canalizar las cosas a buen puerto. Parecerá viejo por lleer "Delphi 4", pero sus conceptos siguen vigentes y/o se pueden extrapolar a lo nuevo.

La documentación oficial de Indy la puedes consultar. Aunque si es cierto que no se caracteriza por tener demasiados ejemplos.

Para que te hagas una idea de como deberías trabajar con TidHHTP y navegar un sitio, mira esto.
Y como he dicho, en otro hilo yo ya había comentado sobre Indy+Post+recuperar HTML. Si bien en esa oportunidad apunté al uso de Indy con Lazarus (que es lo que uso actualmente), estimo que las cosas con Delphi son iguales o bastante similares.

Saludos,
__________________
Delphius
[Guia de estilo][Buscar]
Responder Con Cita
  #5  
Antiguo 23-09-2016
fqm33 fqm33 is offline
Miembro
NULL
 
Registrado: ago 2016
Posts: 18
Poder: 0
fqm33 Va por buen camino
Buenos días a todos, tomando de nuevo el tema en el que muy amablemente me están ayudando, tome la sugerencias de Delphius y casimiro, y he leído mucho al respecto, aunque por cuestiones de ocupaciones varias no he avanzado mucho, les comento que ya envio la información del usuario y contraseña a la pagina. muchas gracias, por eso, lo estoy elaborando con Webbrowser, sin embargo me he encontrado que después de entrar el usuario y su clave, con el siguiente código

procedure TF_activa.xpButton1Click(Sender: TObject);
begin
Webbrowser1.OleObject.Document.GetElementByID('ctl00$ContentPlaceHolder1$txtUserIni').SetAttribute(' value', 'ECM1112A');
Sleep(250);
WebBrowser1.OleObject.Document.Forms.Item(0).elements.item('ctl00$ContentPlaceHolder1$BtnIngresar'). Click;
end;

y funciona bien

al tratar de entrar un click en uno de los botones del menú, se saca un error de violación de memoria,
el código es el siguiente


procedure TF_activa.xpButton3Click(Sender: TObject);
begin
WebBrowser1.OleObject.Document.Forms.Item(1).elements.item('button2').Click;
Sleep(250);
end;

como ven lo monte en otro botón, pero también lo he intentado en el procedimiento anterior, y el error es el mismo, de nuevo muchas gracias por su ayuda
Responder Con Cita
  #6  
Antiguo 23-09-2016
bitbow bitbow is offline
Miembro
 
Registrado: jul 2006
Posts: 366
Poder: 18
bitbow Va camino a la fama
No manchen, quien anda resucitando post de la prehistoria?
__________________
¡Ni como ayudarte Niño!!
bitbow
Responder Con Cita
  #7  
Antiguo 23-09-2016
Avatar de Casimiro Notevi
Casimiro Notevi Casimiro Notevi is offline
Moderador
 
Registrado: sep 2004
Ubicación: En algún lugar.
Posts: 32.055
Poder: 10
Casimiro Notevi Tiene un aura espectacularCasimiro Notevi Tiene un aura espectacular
Cita:
Empezado por fqm33 Ver Mensaje
Buenos días a todos
Recuerda poner los tags al código fuente, ejemplo:



Gracias
Responder Con Cita
  #8  
Antiguo 23-09-2016
fqm33 fqm33 is offline
Miembro
NULL
 
Registrado: ago 2016
Posts: 18
Poder: 0
fqm33 Va por buen camino
Casimiro, gracias por el comentario lo tendré en cuenta para la próxima, y bitbow, te comento, soy nuevo en el tema de Internet tengo delphi 7 enterprise, he usado lo que voy aprendiendo, si tienes una forma mas eficiente que me sirva para esta versión de Delphi bienvenida sera.
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
Enviar información a aplicación Delphi desde PHP elpichi Internet 3 10-05-2015 19:06:42
Enviar Datos a pagina web desde delphi tocomi Internet 3 18-02-2009 23:02:59
Problemas para enviar un mensaje desde una página web selman .NET 0 02-06-2007 00:18:58
Usar Post para enviar información a otra página halizia PHP 3 20-12-2006 14:55:12
enviar instruccion de =SUM desde delphi 5 a excel mayte mtz Varios 2 06-12-2006 16:52:28


La franja horaria es GMT +2. Ahora son las 19:15:13.


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