python实现获取桌面图标名称和坐标

想要实现一个桌面图标移动的python脚本,想利用鼠标模拟来实现,但是不知道桌面上每个图标的坐标以及需要图标所代表的名称(如知道这个图标是微信图标)。

详细解释可以参考这篇文章:https://blog.csdn.net/weixin_43576565/article/details/131236405?csdn_share_tail=%7B%22type%22%3A%22blog%22%2C%22rType%22%3A%22article%22%2C%22rId%22%3A%22131236405%22%2C%22source%22%3A%22weixin_43576565%22%7D

import pyautogui

# 获取屏幕分辨率
screenWidth, screenHeight = pyautogui.size()

# 获取所有桌面图标的位置和名称
desktop_icons = []
for x in range(0, screenWidth, 50):
    for y in range(0, screenHeight, 50):
        # 获取当前位置的像素颜色,如果是桌面图标,则返回非空
        color = pyautogui.pixel(x, y)
        if color != (0, 0, 0):   # 判断是否为桌面图标,黑色的是背景
            # 获取桌面图标名称
            name = pyautogui.screenshot(region=(x-10, y-10, 40, 40))
            name.save('icon_name.png')
            icon_name = pytesseract.image_to_string(name, lang='eng', config='--psm 7')   # 需要安装tesseract和pytesseract库
            desktop_icons.append({'name': icon_name, 'x': x, 'y': y})

# 输出桌面图标信息
print(desktop_icons)


不知道你这个问题是否已经解决, 如果还没有解决的话:

如果你已经解决了该问题, 非常希望你能够分享一下解决方案, 写成博客, 将相关链接放在评论区, 以帮助更多的人 ^-^