Skip to content

Commit 03d3cca

Browse files
feat: add image recognition with pyautogui
ADDED FEATURES * recognizing calculator buttons * recognizing and clicking a captcha
1 parent 6b7b27d commit 03d3cca

File tree

5 files changed

+55
-0
lines changed

5 files changed

+55
-0
lines changed

assets/calc-botao-2.png

620 Bytes
Loading

assets/calc-botao-4.png

635 Bytes
Loading

assets/captcha.png

447 Bytes
Loading

assets/clicando-captcha.gif

688 KB
Loading

pyautogui_reconhecimento_imagem.py

Lines changed: 55 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,55 @@
1+
# 202401 - Python 3.12.0
2+
# 4.13 - Como quebrar captcha com reconhecimento de imagem
3+
4+
5+
import pyautogui
6+
import logging
7+
import logging.config
8+
9+
10+
# configurando logging:
11+
logging.config.fileConfig(fname='config.ini', disable_existing_loggers=False)
12+
logger = logging.getLogger(__name__)
13+
14+
15+
def localizando_calculadora():
16+
try:
17+
logging.info('INICIO: Localizando calculadora.')
18+
19+
# encontrar coordenadas proximas da imagem
20+
print(pyautogui.locateOnScreen('assets/calc-botao-4.png'))
21+
print(pyautogui.locateOnScreen('assets/calc-botao-2.png'))
22+
23+
# encontrar o centro das coordenadas de acordo com a imagem
24+
botao_4 = pyautogui.locateCenterOnScreen('assets/calc-botao-4.png')
25+
botao_2 = pyautogui.locateCenterOnScreen('assets/calc-botao-2.png')
26+
logging.info('Coordenadas salvas')
27+
28+
pyautogui.click(botao_4, duration=1)
29+
pyautogui.click(botao_2, duration=1)
30+
logging.info('Movimento click executado.')
31+
32+
except Exception as e:
33+
logging.error(f'Erro ao localizar a calculadora: {e}')
34+
pyautogui.alert('ERRO: Ocorreu um erro ao localizar a calculadora')
35+
36+
37+
# if __name__ == '__main__':
38+
# localizando_calculadora()
39+
40+
41+
42+
def clicando_no_captcha():
43+
try:
44+
logging.info('INICIO: Clicando no captcha.')
45+
captcha = pyautogui.locateCenterOnScreen('assets/captcha.png')
46+
pyautogui.click(captcha, duration=1)
47+
logging.info('Captcha clicado.')
48+
49+
except Exception as e:
50+
logging.error(f'Erro ao clicar no captcha: {e}', exc_info=True)
51+
pyautogui.alert('ERRO: Ocorreu um erro ao clicar no captcha')
52+
53+
54+
if __name__ == '__main__':
55+
clicando_no_captcha()

0 commit comments

Comments
 (0)