Imagesearch como hacer que siga buscando

Pregunta Sin Miedo no te cortes cualquier cosa para empezar - Autoit se comienza facilmente.Para Ordenes o Comandos sueltos. Ver nota como preguntar.
Responder
mendrugo
Mensajes: 8
Registrado: 13 Oct 2013, 15:47

Imagesearch como hacer que siga buscando

Mensaje por mendrugo »

Hola soy nuevo en esto de autoit y espero no haverme equibocado de seccion ;)
Bueno al tema jejeje
Quiero cojer base para hacer un bot para una pagina y me e imaginado que haciendo instalacion desatendida cojeria algo de base.... miren el codigo :

Código: Seleccionar todo

#cs ----------------------------------------------------------------------------

 AutoIt Version: 3.3.8.1
 Author:         myName

 Script Function:
	Template AutoIt script.

#ce ----------------------------------------------------------------------------

; Script Start - Add your code below here

Run ("SetupVirtualCloneDrive5460.exe")
WinWaitActive("VirtualCloneDrive Setup: Acuerdo de licencia", "Aceptar")
Send ("{ENTER}")
WinWaitActive("VirtualCloneDrive Setup: Opciones de instalación", "Siguiente >")
Send ("{ENTER}")
WinWaitActive("VirtualCloneDrive Setup: Directorio de instalación", "Instalar")
Send ("{ENTER}")
WinWaitActive("VirtualCloneDrive Setup: Finalizado", "Cerrar")
Send ("{ENTER}")
Es bastante simple pero ahora que ya e entendido como se hace con teclas me gustaria hacer lo mismo pero con el raton e leido esto http://www.autoitscript.com/autoit3/doc ... lClick.htm
Y no lo entiendo como se hace e utilizado tambien el Au3Record y me da error al ejecutar el script o simplemente no clika donde yo le di.... nose a que se debe..
miren lo que puse

Código: Seleccionar todo

#cs ----------------------------------------------------------------------------

 AutoIt Version: 3.3.8.1
 Author:         myName

 Script Function:
	Template AutoIt script.

#ce ----------------------------------------------------------------------------

; Script Start - Add your code below here

Run ("SetupVirtualCloneDrive5460.exe")
MouseClick("left",315,266,1)
Y me clika en una zona de la pantalla donde no le di... nose porque pasa esto... la verdad solo con entenderlo 1 vez ya me vale me da iwal si utilizo este ejemplo o cualquier otro quiero cojer la base para cuando tenga que clikar en zonas del navegador ;)
Gracias de antemanos ^^ :smt004
Última edición por mendrugo el 14 Oct 2013, 20:22, editado 1 vez en total.
Avatar de Usuario
Dany
Profesional del Autoit
Mensajes: 651
Registrado: 28 Mar 2012, 22:49

Re: clik izquiero en instalacion de programa

Mensaje por Dany »

Mejor usa ControlClick.

saludos
  • ............................................Imagen
    ......................................Imagen
mendrugo
Mensajes: 8
Registrado: 13 Oct 2013, 15:47

Re: clik izquiero en instalacion de programa

Mensaje por mendrugo »

jejeje lo probare...me podrias decie la diferencia entre mouseclick y controlclick?
:smt030
Avatar de Usuario
Dany
Profesional del Autoit
Mensajes: 651
Registrado: 28 Mar 2012, 22:49

Re: clik izquiero en instalacion de programa

Mensaje por Dany »

Mouseclick mueve el raton. controlclick le envia un click internamente sin necesidad de mover el ratón.

:smt027


saludos
  • ............................................Imagen
    ......................................Imagen
mendrugo
Mensajes: 8
Registrado: 13 Oct 2013, 15:47

Re: clik izquiero en instalacion de programa

Mensaje por mendrugo »

Dany escribió:Mouseclick mueve el raton. controlclick le envia un click internamente sin necesidad de mover el ratón.

:smt027


saludos
nose si lo e entendido bien quieres decir que si lo hago con mouseclick mientras este el script no podre hacer nada y en cambio si o ago con controlclick podre dedicarme a otras cosas mientras?........ mira como ba ;)

Código: Seleccionar todo

#cs ----------------------------------------------------------------------------

 AutoIt Version: 3.3.8.1
 Author:JoMuCa

 Script Function:
	Bot adf.ly 0.1
Tarea de mañana:terminar de configurar
#ce ----------------------------------------------------------------------------


#include <ImageSearch.au3>
#include <GDIPlus.au3>
;-------------------------Introduce la url----------------------------------
$fileA = @ScriptDir & "\imagenes\link.bmp"

_GDIPlus_Startup()

$hImageA =_GDIPlus_ImageLoadFromFile($fileA)
$hBitmapA = _GDIPlus_BitmapCreateHBITMAPFromBitmap($hImageA)

$x = 0
$y = 0

$result = _ImageSearch($hBitmapA, 1, $x, $y, 20, 0)
If $result > 0 Then
	MouseMove($x, $y)
	MouseClick("left") ;Clicka con el boton izquierdo 1 vez
    Send ("{DELETE}") ;Borra lo que hay en la barra de url
	Send("http://adf.ly/X2M3S") ;Aqui Pones Tu Link de Adf.ly
	Send("{ENTER}") ;Te envia a la pagina de arriva
EndIf

;-----------------------Se detiene X tiempo-----------------------
Sleep(50000) ;Tiempo en milisegundos 50000=50 segundos 15000=15 segundos carga de adf.ly
;----------------------------Clicka en el boton de la publicidad--------------------------
$fileA = @ScriptDir & "\imagenes\BotonPubli.bmp"

_GDIPlus_Startup()

$hImageA =_GDIPlus_ImageLoadFromFile($fileA)
$hBitmapA = _GDIPlus_BitmapCreateHBITMAPFromBitmap($hImageA)

$x = 0
$y = 0

$result = _ImageSearch($hBitmapA, 1, $x, $y, 20, 0) ;
If $result > 0 Then
	MouseMove($x, $y)
	MouseClick("left")

EndIf
;-------------------------Se para X tiempo-------------------------------
Sleep(50000) ;Tiempo en milisegundos 50000=50 segundos 15000=15 segundos carga de adf.ly
;------------------Clicka icono de la barra de tareas--------------------------------------
$fileA = @ScriptDir & "\imagenes\BotonAbajo.bmp"

_GDIPlus_Startup()

$hImageA =_GDIPlus_ImageLoadFromFile($fileA)
$hBitmapA = _GDIPlus_BitmapCreateHBITMAPFromBitmap($hImageA)

$x = 0
$y = 0

$result = _ImageSearch($hBitmapA, 1, $x, $y, 20, 0)
If $result > 0 Then
	MouseMove($x, $y)
	MouseClick("right") ;Clika con boton derecho
EndIf
;------------------------------------------------------------------------NUEVA IDENTIDAD----------------------
$fileA = @ScriptDir & "\imagenes\NuevaIdentidad.bmp"

_GDIPlus_Startup()

$hImageA =_GDIPlus_ImageLoadFromFile($fileA)
$hBitmapA = _GDIPlus_BitmapCreateHBITMAPFromBitmap($hImageA)

$x = 0
$y = 0

$result = _ImageSearch($hBitmapA, 1, $x, $y, 20, 0)
If $result > 0 Then
	MouseMove($x, $y)
	MouseClick("left") ;Clika con boton izquierdo
EndIf
_GDIPlus_ImageDispose($hImageA)
_GDIPlus_Shutdown()
Nose lo que pasa en la ultima busqueda de imagenes que enteoria la tendria que encontrar pero no hace click en ella. ;)
ayudame porfa jeje
Avatar de Usuario
Dany
Profesional del Autoit
Mensajes: 651
Registrado: 28 Mar 2012, 22:49

Re: clik izquiero en instalacion de programa

Mensaje por Dany »

Para automatizar esto(paignas) podrías usar _IE funciones. Así no puedes hacer otra cosa mientras trabaja el programa.

saludos :smt027
  • ............................................Imagen
    ......................................Imagen
mendrugo
Mensajes: 8
Registrado: 13 Oct 2013, 15:47

Re: clik izquiero en instalacion de programa

Mensaje por mendrugo »

pero necesito usar un navegador llamado tor que es similar a firefox nose si lo conoceras jejeje ;) gracias
Porcierto mira como a quedado el codigo

Código: Seleccionar todo

#cs ----------------------------------------------------------------------------

 AutoIt Version: 3.3.8.1
 Author:JoMuCa

 Script Function:
	Bot adf.ly 0.1

#ce ----------------------------------------------------------------------------


#include <ImageSearch.au3>
#include <GDIPlus.au3>

While 1
;-------------------------Introduce la url----------------------------------
$fileA = @ScriptDir & "\imagenes\link.bmp"

_GDIPlus_Startup()

$hImageA =_GDIPlus_ImageLoadFromFile($fileA)
$hBitmapA = _GDIPlus_BitmapCreateHBITMAPFromBitmap($hImageA)

$x = 0
$y = 0

$result = _ImageSearch($hBitmapA, 1, $x, $y, 20, 0)
If $result > 0 Then
	MouseMove($x, $y)
	MouseClick("left") ;Clicka con el boton izquierdo 1 vez
    Send ("{DELETE}") ;Borra lo que hay en la barra de url
	Send("http://adf.ly/X2M3S") ;Aqui Pones Tu Link de Adf.ly
	Send("{ENTER}") ;Te envia a la pagina de arriva
EndIf

;-----------------------Se detiene X tiempo-----------------------
Sleep(30000) ;Tiempo en milisegundos 50000=50 segundos 15000=15 segundos carga de adf.ly
;----------------------------Clicka en el boton de la publicidad--------------------------
$fileA = @ScriptDir & "\imagenes\BotonPubli.bmp"

_GDIPlus_Startup()

$hImageA =_GDIPlus_ImageLoadFromFile($fileA)
$hBitmapA = _GDIPlus_BitmapCreateHBITMAPFromBitmap($hImageA)

$x = 0
$y = 0

$result = _ImageSearch($hBitmapA, 1, $x, $y, 20, 0) ;
If $result > 0 Then
	MouseMove($x, $y)
	MouseClick("left")

EndIf
;-------------------------Se para X tiempo-------------------------------
Sleep(30000) ;Tiempo en milisegundos 50000=50 segundos 15000=15 segundos carga de adf.ly
;------------------Clicka icono de la barra de tareas--------------------------------------
$fileA = @ScriptDir & "\imagenes\NuevaOpcion.bmp"

_GDIPlus_Startup()

$hImageA =_GDIPlus_ImageLoadFromFile($fileA)
$hBitmapA = _GDIPlus_BitmapCreateHBITMAPFromBitmap($hImageA)

$x = 0
$y = 0

$result = _ImageSearch($hBitmapA, 1, $x, $y, 20, 0)
If $result > 0 Then
	MouseMove($x, $y)
	MouseClick("right") ;Clika con boton derecho
EndIf
;------------------------------------------------------------------------NUEVA IDENTIDAD----------------------
$fileA = @ScriptDir & "\imagenes\juas.bmp"

_GDIPlus_Startup()

$hImageA =_GDIPlus_ImageLoadFromFile($fileA)
$hBitmapA = _GDIPlus_BitmapCreateHBITMAPFromBitmap($hImageA)

$x = 0
$y = 0

$result = _ImageSearch($hBitmapA, 1, $x, $y, 20, 0)
If $result > 0 Then
	MouseMove($x, $y)
	MouseClick("left") ;Clika con boton izquierdo
EndIf

_GDIPlus_ImageDispose($hImageA)
_GDIPlus_Shutdown()
WEnd
jejejje consegui ponerle el bucle pero tengo un problema mas jejeje echale un vistazo si tienes tiempo.. cres que _IE funciones, funcionara con tor?
Porcierto mira aver si me puedes iluastrar en esta duda:resulta que este script se espera y busca una imagen.. pero si no la encuentra sige como si nada a buscar la siguiente imagen y lo que quiero es que cuando no la encuentre que la sige buscando hasta que la encuentre y prosiga con la orden... es un fallo muy grande que tengo que arreglar ya que conque solo falle una vez ya se jod* jejejje que alguien me ilustre ;)
gracias :smt035
Avatar de Usuario
Dany
Profesional del Autoit
Mensajes: 651
Registrado: 28 Mar 2012, 22:49

Re: Imagesearch como hacer que siga buscando

Mensaje por Dany »

Podrías hacer algo así:

Código: Seleccionar todo

local $result=0
while true
	$result = _ImageSearch($hBitmapA, 1, $x, $y, 20, 0) ;
	if $result>0 Then
	MouseMove($x, $y)
	MouseClick("left")
	ExitLoop
	endif
	sleep(300)
WEnd
no con IE no puedes trabajar con tor.

saludos
  • ............................................Imagen
    ......................................Imagen
mendrugo
Mensajes: 8
Registrado: 13 Oct 2013, 15:47

Re: Imagesearch como hacer que siga buscando

Mensaje por mendrugo »

Dany escribió:Podrías hacer algo así:

Código: Seleccionar todo

local $result=0
while true
	$result = _ImageSearch($hBitmapA, 1, $x, $y, 20, 0) ;
	if $result>0 Then
	MouseMove($x, $y)
	MouseClick("left")
	ExitLoop
	endif
	sleep(300)
WEnd
no con IE no puedes trabajar con tor.

saludos
jejejje gracias pero me pierdo creii que era cuando el resultado sea 0 que vuelba a escanear asta que el resultado sea 1 y haga la accion analizare a fondo ese codigo aver que saco ;)
Gracias
La verdad me vendria bien que me hicieras un ejemplo y yo lo mire con tranquilidad porque en ese codigo no pone la ruta de la imagen y no entiendo....
llevo 2 dias gustos con autoit.
:) Saludos
Avatar de Usuario
Dany
Profesional del Autoit
Mensajes: 651
Registrado: 28 Mar 2012, 22:49

Re: Imagesearch como hacer que siga buscando

Mensaje por Dany »

ahí esta solo colócalo con la imagen que necesitas que haga eso.

saludos
  • ............................................Imagen
    ......................................Imagen
mendrugo
Mensajes: 8
Registrado: 13 Oct 2013, 15:47

Re: Imagesearch como hacer que siga buscando

Mensaje por mendrugo »

Dany escribió:ahí esta solo colócalo con la imagen que necesitas que haga eso.

saludos
Gracias ya lo consegui mira

Código: Seleccionar todo

#cs ----------------------------------------------------------------------------

 AutoIt Version: 3.3.8.1
 Author:JoMuCa

 Script Function:
	Bot adf.ly 0.1
Tarea de mañana:Arreglar fallos
#ce ----------------------------------------------------------------------------

#include <ImageSearch.au3>
#include <GDIPlus.au3>
While 2

While 1
;-------------------------Introduce la url----------------------------------
$fileA = @ScriptDir & "\imagenes\link.bmp"

_GDIPlus_Startup()

$hImageA =_GDIPlus_ImageLoadFromFile($fileA)
$hBitmapA = _GDIPlus_BitmapCreateHBITMAPFromBitmap($hImageA)

$x = 0
$y = 0

$result = _ImageSearch($hBitmapA, 1, $x, $y, 20, 0)
If $result > 0 Then
	MouseMove($x, $y)
	MouseClick("left") ;Clicka con el boton izquierdo 1 vez
    Send ("{DELETE}") ;Borra lo que hay en la barra de url
	Send("http://adf.ly/X2M3S") ;Aqui Pones Tu Link de Adf.ly
	Send("{ENTER}") ;Te envia a la pagina de arriva
	ExitLoop
	EndIf
	sleep(300)
WEnd
;------------------------------------Boton publicidad----------------------------------------------
While 1

$fileA = @ScriptDir & "\imagenes\BotonPubli.bmp"

_GDIPlus_Startup()

$hImageA =_GDIPlus_ImageLoadFromFile($fileA)
$hBitmapA = _GDIPlus_BitmapCreateHBITMAPFromBitmap($hImageA)

$x = 0
$y = 0

$result = _ImageSearch($hBitmapA, 1, $x, $y, 20, 0)
If $result > 0 Then
	MouseMove($x, $y)
	MouseClick("left") ;Clicka con el boton izquierdo 1 vez
	ExitLoop
	EndIf
	sleep(300)
WEnd
;-----------------------------------Abandonar pagina "Opcional"----------------------------------------
$fileA = @ScriptDir & "\imagenes\Abandona.bmp"

_GDIPlus_Startup()

$hImageA =_GDIPlus_ImageLoadFromFile($fileA)
$hBitmapA = _GDIPlus_BitmapCreateHBITMAPFromBitmap($hImageA)

$x = 0
$y = 0

$result = _ImageSearch($hBitmapA, 1, $x, $y, 20, 0)
If $result > 0 Then
	MouseMove($x, $y)
	MouseClick("left") ;Clika con boton izquierdo
EndIf
;-----------------------------Boton cebollita xD---------------------------------------------
While 1
$fileA = @ScriptDir & "\imagenes\Cebolla.bmp"

_GDIPlus_Startup()

$hImageA =_GDIPlus_ImageLoadFromFile($fileA)
$hBitmapA = _GDIPlus_BitmapCreateHBITMAPFromBitmap($hImageA)

$x = 0
$y = 0

$result = _ImageSearch($hBitmapA, 1, $x, $y, 20, 0)
If $result > 0 Then
	MouseMove($x, $y)
	Sleep(30000)
	MouseClick("left") ;Clicka con el boton izquierdo 1 vez
	Send("{DOWN}")
	Send("{ENTER}")
	ExitLoop
	EndIf
	sleep(300)
WEnd
Sleep(5000)
WEnd
Ahora tengo otro problema mira este codigo

Código: Seleccionar todo

While 1
$fileA = @ScriptDir & "\imagenes\Cebolla.bmp"

_GDIPlus_Startup()

$hImageA =_GDIPlus_ImageLoadFromFile($fileA)
$hBitmapA = _GDIPlus_BitmapCreateHBITMAPFromBitmap($hImageA)

$x = 0
$y = 0

$result = _ImageSearch($hBitmapA, 1, $x, $y, 20, 0)
If $result > 0 Then
	MouseMove($x, $y)
	Sleep(30000)
	MouseClick("left") ;Clicka con el boton izquierdo 1 vez
	Send("{DOWN}")
	Send("{ENTER}")
	ExitLoop
	EndIf
	sleep(300)
WEnd
Necesito que aga esto cuando no se encuentre una imagen en la pantalla... Pero todo cuando no se encuentre la imagen en la pàntalla que busque la cebolla.bmp y aga eso....
Alguna idea?
Gracias
Responder