linux - 如何从 Linux 中的 GUI 应用程序中提取文本内容?

标签 linux user-interface ubuntu

我想从 GUI 应用程序中提取文本内容,这里有两个例子::

示例 1:

假设我打开 firefox,然后输入 url : www.google.com

如何使用我自己的应用程序从 firefox 中提取字符串“www.google.com”?

示例 2:

打开计算器(使用gcalctool),然后输入1+1

如何从自己的程序中提取计算器的字符串“1+1”?

简而言之,我想要找出是否有一种方法可以从 GUI 应用程序的任何小部件中提取文本内容

谢谢

最佳答案

我认为没有一种通用的方法可以做到这一点,至少不是一种非常优雅的方法。

一些不雅的想法:

您可能能够修改 X 窗口系统或什至某些工具包框架,以将特定窗口元素中显示的内容提取为文本。

您可以截屏并使用 OCR 库将像素转换回感兴趣区域的文本。

您可以重新编译感兴趣的应用程序以添加某种机制来向它们提问。

您可以使用 xtest 之类的工具来注入(inject)突出显示感兴趣区域的事件并将其复制到剪贴板。

关于linux - 如何从 Linux 中的 GUI 应用程序中提取文本内容?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/6026222/

相关文章:

android - 为安卓模拟器安装 `find`程序

linux - 如何生成主机唯一 ID?

java - 使用 JScrollBar 更新组件

python - Opencv Videocapture 无法读取 https url 视频

linux - 两个MPI计算节点无法完成一次TCP连接,防火墙导致

c# - 如何仅向应用程序添加系统托盘图标?

java - 如何在数据库操作后刷新 JTable 而无需重新加载框架?

shell - 激活 conda 失败(采购 ~/.bashrc)

shell - 如何在 shell 脚本中将 $abc 写为字符串值

linux - 基于字段子集统一分隔文件