python - 如何从文本中检测关键字?

标签 python python-3.x pyautogui

我正在尝试用 Python 编写一个脚本,以便在工作中使用它来自动执行我的一些任务。我一直在使用模块 pyautogui 来模拟鼠标点击和击键,到目前为止效果很好!

现在我正在尝试弄清楚如何自动向 Python 提供几行文本并检测一些关键字。每次运行脚本时,文本都会出现在同一个位置,所以我想我可以使用 pyautogui 选择我想要的文本并将其复制到我的剪贴板。之后,我会使用模块 win32clipboard 来为 Python 提供文本。

Python 最终只是打印剪贴板上的任何内容。 我究竟做错了什么?有没有更简单的方法?

import win32clipboard

win32clipboard.OpenClipboard()
data = win32clipboard.GetClipboardData()
win32clipboard.CloseClipboard()
mytext = input(data)
keywords = ["m1", "M1", "Melding 1"]

if any(keyword in mytext for keyword in keywords):
     print("test")

input('Press ENTER to exit')

最佳答案

input(data) 显示 data 并等待您的输入(稍后成为 mytext 的值).只需删除该行。 data 是您的文本:

if any(keyword in data for keyword in keywords):
     print(keyword)

如果您的关键字没有空格,您可以通过将文本拆分为标记并将标记集与关键字集进行比较来改进程序以避免偶然的子字符串匹配并获得更好的性能:

keywords = {"m1", "M1", "Melding_1"}
if keywords & set(data.split()):
     print("test")

关于python - 如何从文本中检测关键字?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/56068590/

相关文章:

Python:NameError:未定义全局名称 'sortList'(递归期间)

python - 保存递归函数的多个值

python - 删除 pandas 数据框中具有多个关联的条目?

python - 检查一个 Python 脚本是否使用另一个 Python 脚本进行编译

python-3.x - 在 Python 3 中使用 sys.argv 和 Python 解释器

python - key 错误 : 'DISPLAY' when installing pyautogui on Repl.

python - 时间序列分类

python - Django Rest Framework 在本地主机的 PATCHing 中工作正常,但在同源环境中失败

python-3.x - 使用 pyautogui 移动到事件屏幕上的搜索文本

python - 如何知道是否按下了鼠标左键