lengyue869 发表于 2022-9-5 14:38:54

pyautogui截图定位求助

各位,我用pyautogui截图定位练习点击计算器碰到一下两个问题,请帮忙解答,谢谢!


import pyautogui as ag
from time import sleep
import os


#问题1:需要手动打开画图,如果用os.system('mspaint')打开画图就无法执行后面的代码
ag.FAILSAFE=True
ag.PAUSE=0.5

sleep(2)
os.system('mspaint')

distance = 50
while distance > 0:
    ag.drag(distance, 0, duration=0.5) # move right
    distance -= 5
    ag.drag(0, distance, duration=0.5) # move down   
    ag.drag(-distance, 0, duration=0.5) # move left
    distance -= 5
    ag.drag(0, -distance, duration=0.5) # move up


###################################################################################
#问题2:截图定位,如果截图路径或者名称中包含中文则识别的时候会出错,除了改成英文还有其他办法吗?

# ag.screenshot(r'截图.png', region=(100,100, 50, 50))
# ag.click(r'截图.png')

ag.screenshot(r'pic.png', region=(100,100, 50, 50))
ag.click(r'pic.png')

wp231957 发表于 2022-9-5 15:38:14

问题①是因为system是阻塞式运行,可以考虑更换popen试一下
问题②没有测试,如果确实的话,那就没啥办法

lengyue869 发表于 2022-9-5 16:01:31

本帖最后由 lengyue869 于 2022-9-5 16:02 编辑

wp231957 发表于 2022-9-5 15:38
问题①是因为system是阻塞式运行,可以考虑更换popen试一下
问题②没有测试,如果确实的话,那就没啥办法

第一个问题解决了,感谢!
第二个问题我百度说用unicode转码,但是python3好像没办法用unicode...

import pyautogui as ag

ag.screenshot('截图.png' , region=(100,100, 50, 50))
ag.click(unicode('截图.png' , "utf8"))

wp231957 发表于 2022-9-5 16:03:02

lengyue869 发表于 2022-9-5 16:01
第一个问题解决了,感谢!
第二个问题我百度说用unicode转码,但是python3好像没办法用unicode...

为啥非要用中文??

lengyue869 发表于 2022-9-5 16:05:55

wp231957 发表于 2022-9-5 16:03
为啥非要用中文??

国人习惯,有的文件夹不可避免的会包含中文

wp231957 发表于 2022-9-5 16:53:30

lengyue869 发表于 2022-9-5 16:01
第一个问题解决了,感谢!
第二个问题我百度说用unicode转码,但是python3好像没办法用unicode...

第二个问题我百度说用unicode转码,但是python3好像没办法用unicode...

我劝你放弃,unicode是python2下的产物,现在早都废弃了,python3 自动默认utf8

lengyue869 发表于 2022-9-5 21:36:42

wp231957 发表于 2022-9-5 16:53
第二个问题我百度说用unicode转码,但是python3好像没办法用unicode...

我劝你放弃,unicode是python2 ...

再等等看,看看还有没有其他方法
页: [1]
查看完整版本: pyautogui截图定位求助