【问题标题】:In Sikuli, How to find and click a minimum of 3 identical images?在 Sikuli,如何找到并单击至少 3 个相同的图像?
【发布时间】:2017-01-27 17:30:33
【问题描述】:

我正在尝试单击不少于 3 个相同的图像,但是对于 findAll(),我在 sikuli 想要仅选择 1 个图像时遇到困难,而我不希望它选择任何图像(如果没有 3 个)或更多。

if exists(Pattern("1474201252795.png").similar(0.95)):
    wait(1)
    for x in findAll(Pattern("1474201252795.png").similar(0.95)):
        click(x)

【问题讨论】:

    标签: python automation jython sikuli


    【解决方案1】:

    所以只需先计算图像,然后检查计数是否高于 3。

    imageCount=0
    
    images = []
    
    # find all images and store them in a list to prevent additional search
    for image in findAll("Win7StartBtn.png"):
        images.append(image)
    
    #check list length and act accordingly
    if len(images) >= 3:
        for image in images:
            image.click()
    

    【讨论】:

    • 谢谢 - 这适用于 1 个特定图像。如果我想搜索不止一张图片,我会复制代码 x 次,还是让它变得比需要的更难?
    • 我只遇到了一个问题。当设置为 >=2 时,即使有 3、4、5 或 6 个附加图像,它也只会选择 2。
    • 当您说“多个图像”时,我不确定我是否理解您的确切意思?如果您的意思是对其他图像执行相同的过程,那么您可以将这段代码定义为一个函数,并使用不同的参数重用它,例如图像名称和您希望在屏幕上看到的图像数量。然后,您必须分别为每个特定图像调用此函数。
    • 我不确定我是否理解。你的意思是它不适用于不同的图像?
    猜你喜欢
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 2020-04-25
    • 2017-09-20
    • 2020-08-20
    • 2015-06-18
    相关资源
    最近更新 更多