PyAutoGUI - Locate anything on your screen | Simple Pyautogui project
This is the second tutorial video on PyAutoGUI. In this tutorial I will teach you to locate anything on your screen using locateCenterOnScreen() metod which is the most important function of PyAutoGUI python library and then show a simple pyautogui project using the locate center on screen function.
The English Scholar Online Camp channel link:
/ theenglishscholaronlin...
Python and VS Code download:
www.python.org/downloads/
code.visualstudio.com/download
Пікірлер: 233
Hello All 🙋🏻♂️ If you have any kind of customized tool or app request. You can reach out to me on Instagram or email. I can create tools or apps for you. instagram.com/stevegen1907 OR coding101withsteve.freelance@gmail.com Thank You
IDK why but Indians is the best techno teacher. Your explanation is so clear. Thank you
@coding101withsteve8
6 ай бұрын
Thank you for your feedback ❤❤
Steve, I really went far in a personal project after watching your stuff. You are a really good teacher, you not only give great content and information, you show the mindset of how to take on each task and problem. Thx a lot.
@coding101withsteve8
7 ай бұрын
Thank you so much. I'm glad to know it helped you to go far in your project ❤ All the best
I love your vlogs! They are so entertaining and informative.
To the folks who encountering this error message "PyAutoGUI was unable to import pyscreeze. (This is likely because you're running a version of Python that Pillow (which pyscreeze depends on) doesn't support currently.) Please install this module to enable the function you tried to call." Try running this in terminal: pip install --upgrade pillow
@DEMONLOVESTERD
Ай бұрын
W bro ty
Thanks bud! great video and instructions.
Thank you, this helped me so much! I love the demonstration, you explained it perfectly!
@coding101withsteve8
5 ай бұрын
Glad it was helpful! Thank you for the feedback 😇
Thanks for the quick and easy to understand tutorial!
@coding101withsteve8
3 ай бұрын
You're most welcome
Loved the video! Feels like I can do a LOT more now than I could before. Also, you can combine moveTo() and click() with click(x = (enter X coordinates), y = (enter Y coordinates)). And I ran into an issue where my brower took too long to load the page before it could find the Search bar, so I made a function that makes your program wait before trying to find an image incase your browser loads too slowly: import pyautogui as pag def find(img): while True: try: x, y = pag.locateCenterOnScreen(img, confidence=0.9) print("Found") return (x, y) except TypeError: sleep(1) print("Waiting") pass You would use it like this: xy = find("image.png") click(xy)
Perfect video. You made my day Steve. Thank you.
That tool is so increadibly helpful
love this tutorial man Thank you. Hello from Ecuador
@coding101withsteve8
Жыл бұрын
Hello. Thank you so much
Thank you for this very useful video!
So incredibly helpful!!!!
@coding101withsteve8
Жыл бұрын
Thank you Jonathan. Glad it helped You 😇
needed this tutorial today, thanks!
Clear code, nice video! Thank you bro
@coding101withsteve8
Жыл бұрын
You're welcome!
very interesting concept ! thanks mate
Ima download it thanks for sharing!!
thanks brother, this is very good, it worked for me. i gained so much knowledge. because you i will try progrmaming
thanks friend you are a friend, I needed to know how to use the image function thanks, I just found the way you use write but I'm a newbie in automo so I need to learn more.
Hey this was a really good video i subscribed, thank you so much
Great video this is going to help a lot on a machine vision project I'm working on
@coding101withsteve8
Жыл бұрын
Great to hear! All the best 👍💯
You are the boss bro!!! Thank you a lot!
@coding101withsteve8
Жыл бұрын
Not a boss, but You're welcome!
Is theri a display resolution limitation that pyautogui will work with? My data looks like garbage and is nowhere near the image. I've also had to drop the confidence down quite low for it to even detect anything (which might be why I'm getting garbage).
🎉great video you saved my time😊
Awesome tutorial. I've learned a lot from it.
@coding101withsteve8
4 ай бұрын
Thank you so much, Glad you learnt 😇
if im using pyautogui and i have 10 different instances running and when they handle errors they need to use pyautogui to handle them but whichever tab is the active one on my screen ie whichever instance launced last ends up getting messed with when it is another one buried behind it that is having an error, how do i switch to the tab of python/selenium code that is having the error?
Pretty cool!
Great channel, Upload more!
@coding101withsteve8
2 жыл бұрын
Thank you. That's the plan.
@d8822d
2 жыл бұрын
@@coding101withsteve8 Yes, if you do it 3 times a week, your channel will have 100k subs in few month mark my words.just keep making content about python only
pure gold!
Hey dude! Thanks a lot for your great tutorial. I only have one problem, when pyautogui opens the app I need to automate, the code stops giving commands. Can you help me?
Thanks bro, That was great tutorial, it made me realise the value of AutoHotKey scripts I write for the very purpose, they are very short and intuitive, I mean I can subscribe any channel with those scripts without inputting their logo. There's nothing we could really do, python needs to evolve.
Hello, I was wondering how I could locate a certain color pixels then have my mouse follow those pixels, all in pyautogui.
Brilliant Video bro
A good working example 👍
year. I want to get into making soft on desktop because it offers more features but I have just been preferring the softow of mobile apps
thank you for your explanation very helpful! Just one question that you did not call any browser in the code does pyautogui understands that it has to pull up a browser.
@coding101withsteve8
3 ай бұрын
No it doesn't. It just looks for the image on the screen, and performs the click or key press operations. It's more like a human eye. What is seen on the screen. If there is an app open behind an already opened app. Pyautogui won't see it.
Thx so much you are the best teacher for me
@coding101withsteve8
Жыл бұрын
Thank you 😇 Glad you learnt something
Thank you so much!!!!!
The pyautogui locateonscreen feature gives me the failed to read, file is missing, has improper permissions, or is an unsupported or invalid format. Any suggestions to fix this??
@buildsrike791
Жыл бұрын
Same as me
@24-Card
Жыл бұрын
Is the png saved locally (to the location of the executable)?
So perfect
It's very helpful
Thank you!
Thanks, this was a great start for me, I automated some task using try and except, and a while that cicles every second and search if one of the images show on the screen, if the locateonscreen function doesn't find it, it shows an error and doesn't continue inside the try function. If the images is found there is no error and a code of a macro can be executed. I would add to this video that the cheat sheet of the pyautogui library is very useful, can be found on Google. The functions pyautogui.position() (print mouse position) and pyautogui.moveTo(x=1857, y=1944, duration = 0.2) (where x and y are positions on screen) can be used to click on something else that is not the center of the image, and is very useful for automation purposes. A code example of what I did: import pyautogui import cv2, numpy import time pyautogui.position() # find mouse position for developing while(True): time.sleep(1) # wait 1 second before another cicle try: x, y= pyautogui.locateCenterOnScreen(r"image_path.png", confidence = 0.9) pyautogui.moveTo(x=1873, y=1634, duration = 0.2) pyautogui.leftClick() time.sleep(1) pyautogui.moveTo(x=1857, y=1944, duration = 0.2) pyautogui.leftClick() time.sleep(1) except: None Also, you need to install "pip install opencv-python", it is required too. To exit the cicle I stop it from the terminal, there is also a funcion on pyautogui to exit a program, it is pyautogui.FailSafeException. I hope this comment can help someone.
@coding101withsteve8
Жыл бұрын
That's great!!!
Great video, Does this only work on computers? i want to create this to run on my iphone, but since there is no mouse pointer would it work the same?
@coding101withsteve8
2 жыл бұрын
Yes this only works on computers. 😊
question. where did you save the image file? should it be in the python directory or anywhere in pc?
@donaldtrunp4597
Жыл бұрын
You can save it anywhere in the PC and copy its location. But for me I would prefer creating a python directory for your photos so that it would be pretty much easier to find and organized.
I want to ask 1 question Can I copy, print and delete in PyAutoGUI function? (delete the part I just entered) Hope you can reply me!
bro please make a complete python course. Because you teching method is very simple and attractive.
If I have two same images on screen how to locate the second one? Urgent please
great tutorial. I still have a question, when i run the same code as you did in 2:07 it says "OSError: Failed to read image.png because this file is missing, has improper permissions, or is an unsupported or invalid format"... i have saved the file in the same directory as my program as an png file. I also tried with other files. do you maybe know the issue?
@coding101withsteve8
2 жыл бұрын
Hello. Thank you for your comment. It could be possible that the image file was of another format before and you just changed the extension. Eg. If it was image.jpg... You changed it nto image.png. then this error can come. Secondly you can try renaming the file. Thanks you. Hope that helps 😇
@oxydripgen
2 жыл бұрын
@@coding101withsteve8 thank you for the answer aswell, i already fixed my issue, i am new to python and did not have my folder open, so my program couldn't recognize the images in the folder
@coding101withsteve8
2 жыл бұрын
@@oxydripgen Glad you solved it on your own. ☺
@tuvelout
Жыл бұрын
@@oxydripgen having the folder with the file ".png" open or close shouldn't make any difference, only if it was there you obtained the croped image, program was searching for.
@pluderr3947
Жыл бұрын
@@tuvelout Hey man, it doesn't work for me. I have it saved as a PNG file but it still doesn't work. Do you know what the issue would be?
NICE VIDEO SIR
Hi, I learned so much from this video and I want to thank you for teaching us! I have a question though, when I save the buttons as a PNG file into my desktop and run the code it says that "Failed to read youtube_search.png because file is missing, has improper permissions, or is an unsupported or invalid format". Is there any way I can fix this by chance? Thank you!
@N-H4
Жыл бұрын
did you put the file inside the python project? in a text editor, you should be able to see it if it is. if not, just drag and drop the file into the project.
Thanks from NL!
@AlexanderWeurding
11 ай бұрын
Can you add the donate button. Thanks.
@coding101withsteve8
6 ай бұрын
It's added, thank you so much 😇❤
if you use this method to subscribe to multiple channels can youtube detect this and cancel the subscriptions?
nice video
thanks for this , can you make video but this time to monitor a when use click "EDIT" button or any custom button (using snippet) and print to screen
This is brilliant
@coding101withsteve8
Жыл бұрын
Thank you 😇
Hi, for some reason, locateOnScreen function always returns None, despite both the code and the image are located in the same folder. Thank you.
@nors1056
Жыл бұрын
did you fix it?
where i can get the code to run, test and learn
Please tell me, how can I read live data from running applications?
Danke!
@coding101withsteve8
6 ай бұрын
Thank you so much ❤
Outstanding! Do we have a newer alternative? Thanks
Do we have to have the .png file in our PC, what if I want to convert the .py to .exe and run that file in someone else's PC? Is there a way to use PyautoGUI without having images saved in PC?
@a-b-c
Жыл бұрын
Yes, you can convert.py files to .exe
subscribed ur channel using this method :)
@coding101withsteve8
Жыл бұрын
Great! you learnt and thank You for the subscription ❤
anyone know how to deploy pyautogui script in remote server and execute it via ssh? because I got display error.
Hey steav, your videos and explanations are really awesome. Please keep going I have a following question: 1) can we avoid any manual intervention by users during the execution of script? Because that is the whole idea i required. 2) when we share this Script file to other users then they should hold the same PNG files in the same location right? Because i am really looking for an concrete automation as an alternative of RPA tools. Thats why asking. Please, need your suggestion.
@coding101withsteve8
2 жыл бұрын
Hello 1. No you cannot avoid manual intervention. You'll have to use it on a seperate machine. 2. I had tried that but it did not work. The pixels of other machines changes. You can try to change the other machine's display settings. But still I believe you'll have to take new screen shots. Thank you.
@vetrivelr5708
2 жыл бұрын
@@coding101withsteve8 Thanks steve for detailed explanation. But if other users having same screen size resolution of mine will that work, if i share script & images and ask them to Store it on a specific location and run.? Example: My screen size is 1980×1080 then other user's also having same size of resolution will that work?
thank you
Thank you.
@coding101withsteve8
10 ай бұрын
You're welcome!
❤👍
Can the pyautogui locateonscreen auto click VPN unlimited App?Can you help me?😢
brother can help me how can i do this: i have 3 pic (jpg) number 1,2,3 in my screen i must choose the correct, how i say to python click in number 2 knowing is number 2, the number 2 is in the middle for example. thanks, i have screeenshot saved of numbers, but after?
@coding101withsteve8
6 ай бұрын
Check my other video on Pyautogui. There you'll learn the basic commands. It would be better to use coordinates for clicking particular image among 3 images.
Image not found problem: multi monitors PyAutoGui only supports the primary monitor, test your code on the primary and it will work fine.
Hi , there is an easier way to get the XY cords from your screen. You can write a small script in python: import pyautogui as pag pag.displayMousePosition() if you run it, it will display the cords of your mouse at any time
@aucwa349
Жыл бұрын
maybe im stupid but it just gives me like 150 errors
@aaquibtayyabi
Жыл бұрын
@@aucwa349 150 ? lol dk about that but check if you have installed the pillow package through pip and try debugging again
@coding 101 with Steve - How can I locate some images in a window that's overlaid by other window my screen, example of that situacion, i want to locate the youtube icon, but i need the excel in max size on screen
@zHeavy
2 жыл бұрын
like, the other screen is in the background. (english is not my first language, i hope you understood)
@coding101withsteve8
2 жыл бұрын
Thank you for your question. Actually it's not possible to locate because it locates whatever is seen. To put it simple, it locates whatever you can see 😁. However you can do somthing to minimize the excel and then locate.
@zHeavy
2 жыл бұрын
@@coding101withsteve8 ok, so do it with pyautogui is not possible, but there is another library that can do this? Unfortunaly, minimize is not an option, because i need to find/read other application and click in the application thats on my screen. Thanks for the attencion
@LukeeRPA-AI
2 жыл бұрын
@@zHeavy you can move the mouse to click the task bar or using hotkey function of pyautogui press keys to change window, like 'alt' and 'tab'
How can convert this project into .exe format... Like other software?
😀😀woooooow no ways!!!
@Ditebogomojapelo
4 ай бұрын
Hello sir, what file formatter extension can I use for my code to have the same colors are yours? I have Prettier installed but I just learnt that prettier does not support Python. My goal is for the colors on my code in VScode to look like yours.
Bro what if i want to click under an image that has random location on the screen everytime page refreshes. i want it to click on all the pixels in certain area under the image
@coding101withsteve8
2 жыл бұрын
You can find the location of the image and then to click below the image you can use the moveRel and click functions. In my other video you'll find how to use moveRel function.
@afnanahmad4266
2 жыл бұрын
@@coding101withsteve8 Yeah I understood now!💗 thanks!
muito bom, eu diria
I've always wanted to make soft but every ti I download software to do so, I just look at the 5,000 buttons/settings, cry for a few
hello im confused on what to do because the terminal is telling me this. Failed to read youtube_search.png because file is missing, has improper permissions, or is an unsupported or invalid format. what do you suggest doing?
@coding101withsteve8
3 ай бұрын
Hello, Check if the file is in the same folder as your python file.
@InstaSnips
3 ай бұрын
thank you i fixed it and its working now!@@coding101withsteve8
Em....when we finished to compose how to get it out ?
Hi What to do when screen size changes then the co-ordinate will also change how to handle this?
@prepareyourself7448
13 күн бұрын
Same question i have my script is working on 1st screen and not on 2nd screen
hmm, @2:04 I can't run the program unless I kill the arrow key in the upper right. Typing python pyautogui_imp.py does nothing. new to coding, would love to understand why that is happening
@stupid_idiot_69420
11 ай бұрын
also its good to provide errors when you're asking for help so i would recommend you do that next time :)
@stupid_idiot_69420
11 ай бұрын
my comments didnt go through lol
How search pixel in inactive windows ? And if not error level , send anyone key??
hi thanks the video why I get this error: in = pyautogui.locateOnScreen("fullscreen.png") ^^ SyntaxError: invalid syntax (Expected expressionPylance)
@stupid_idiot_69420
11 ай бұрын
"in" is already in python so try renaming it to something else.
Luck bro
can websites detect that we are using some kind of automation using pyautogui ? ( except captchas)
@coding101withsteve8
Жыл бұрын
No, website can't detect the automation done by pyautogui since, pyautogui automates your mouse and keyboard. It's like you typing or clicking by yourself. So technically it can't be detected that way. But if the websites detect the speed, it can assume it as some bot activity. So you can just control the speed in pyautogui.
@RC-qi6hs
Жыл бұрын
@@coding101withsteve8 thanks for clarifying. Awesome video btw.
What happens if I two same things in my screen?
Sir I am getting errors import pyautogui res = pyautogui.locateOnScreen("file.png") print (res) Error: Can't open File 'file name ':[Error 2] No such file or directory What will I do
@af94248
Жыл бұрын
try the full path (r'C:\blabla\folder1\file.png')
I use autohotkey’s window spy to get x,y values of my mouse. Much faster
I have a project to automate my PC. Can you take it up ? Please let know
@coding101withsteve8
Жыл бұрын
Let me know!
@daaduindustries
Жыл бұрын
@@coding101withsteve8 how can i get in touch ? Some mail id ?
@coding101withsteve8
Жыл бұрын
@@daaduindustries you can check my video on utube views bot in that it's mentioned. At 5:30 Can't send in the comments.
pysceeze is not working in latest python versions
THansk
Hey i am really new to Python and and i a very paranoid person so i dont really like installing anything. So my question is: How do i know if its safe to install any Libary? I want to install one called ..pyautogui.. and dont know how to check if its safe. Thx for any answer and Great Video
@coding101withsteve8
6 ай бұрын
Hey, I found a very nice article here. You can check it out 😇 www.codethink.co.uk/articles/2023/pypi-safety/#:~:text=You%20can%20use%20a%20tool%20such%20as%20pip%20audit%20to,Python%20dependencies%20have%20known%20vulnerabilities.
කෝ අයියෙ ඔයාගෙ mtfe වීඩියෝ..ඒව හැමදාම මම බලනව ,දැන් පේන්න නෑනෙ එකක්වත්
when i move the window, it becomes defocused
This was typed with python and finished by me.
@coding101withsteve8
Жыл бұрын
Oh wow. Good job 👏👏
Where i need to store the png file?
@coding101withsteve8
Жыл бұрын
Hello! You can store it anywhere and then mention the full path in the code or you can store it where your code is and just mention the name of the png file. 😇
doesnt work when i try it it just says "no such file or directory: 'edit.png'
@coding101withsteve8
Жыл бұрын
Hello, this error usually comes when the image file is not in the same folder as your python file or if you change the original extension of the image file.
2:09 alr, got error related with this line "res = pyautogui.locateOnScreen("image.png")" afterwards some more error related with this directory "C:\Users\PC\AppData\Local\Packages\PythonSoftwareFoundation.Python.3.9_qbz5n2kfra8p0\LocalCache\local-packages\Python39\site-packages\pyautogui\__init__.py" I'll be solving it now, but so far I believe the problem is related with package/modules I have to import. edit. fixed detects the pic on the screen but it is not perfect at it, some pics work some others don't still to figure out