如何使用Python获取信息框文本

时间:2018-08-29 22:20:18

标签: python

很抱歉,这个问题听起来有点含糊,但我不知道我要寻找的术语。

如果将鼠标光标放在Windows中的某个项目上并停留一秒钟,则会弹出一个包含一些文本的框。例如,如果将光标放在“ e”图标上,则会显示一个带有文本“ Microsoft Edge”的框。

有没有一种使用Python的方法来读取文本内容?因此,对于给出的示例,我想编写或调用一个返回包含“ Microsoft Edge”的字符串的函数。

感谢您提供的任何帮助。

2 个答案:

答案 0 :(得分:0)

您指的是工具提示。可以将Python与BeautifulSoup结合使用,以将其从网络上删除。

答案 1 :(得分:0)

我希望从系统任务栏中显示的图标获取工具提示文本。 python的pywinauto模块中的pywinauto.controls.common_controls.ToolTipsWrapper(hwnd)类中有函数。例如,GetTipText(tip_index)返回工具提示的文本。您可以尝试这些功能是否为您提供任何帮助。但是当使用按类名作为窗口句柄的图标控件时,出现诸如“找不到窗口”之类的错误。例如

    app = Application(backend="uia").connect(path="explorer")
    sys_tray = app.window(class_name="Shell_TrayWnd")
    hnd = sys_tray.childWindow(class_name= "ToolbarWindow32")``
    texts= pywinauto.controls.common_controls.ToolTipsWrapper(hnd).texts()
    print(texts)

pywinauto的文档:https://media.readthedocs.org/pdf/pywinauto-docs/docs-rework/pywinauto-docs.pdf