Search code examples
pythontkinterpyautoguitkinter-layout

How to create a tool with tkinter to print output in Label


I have created a script that pyautogui.locatOnScreen() for a specific image and takes automatically a screenshot, and it converts the image to text automatically.

But I want a simple tool with tkinter. When I click on the print button the script works and shows me the text that is converted on a Label . But I don't know how to make this tool.

This is my code

import pyautogui as py
import time
from PIL import Image
from pytesseract import *
 
pytesseract.tesseract_cmd = r'C:\Program Files\Tesseract-OCR\tesseract.exe'
 
while 1:

    indice1 = py.locateOnScreen("image3.png",confidence=.8)
     
    if indice1:
         
 
 
        print("indice see it ")

        myScreenshot = py.screenshot(region=(626, 3398, 285, 119))
        myScreenshot.save(r'C:\Users\rachidel07\Desktop\ok\venv\image.png')
 
        img=Image.open("image.png")
        output = pytesseract.image_to_string(img)
        print(output)
 
    else:
            print ("non")

Solution

  • Hello i believe your main problem here is the way this is structured the only way that i know from experience is to create a function to read the label and a button to call the function inside the function create a variable to read the label and do a if statement to check if the label is what you want it to be you could also just create a seperate variable to increase by 1 then do a if statement to check if the variable is 1 for example this is in one of my projects btw

     #Getting input from the GUI COMMAND box 
    def getTextInput():
        result=textExample.get("1.0","end")
        if result == ("write.question"):
            write_question_key = write_question_key + 1
        if result == ("restart.command"):
            write_question_key = write_question_key + 10
    
    #Creating the GUI COMMAND box
    textExample=tk.Text(root, height=10)
    textExample.pack()
    
    #Creating the Insert button
    btnRead=tk.Button(root, height=1, width=10, text="Insert GUI", 
                        command=getTextInput)