使用Pyautogui控制鼠标左键双击并放开,获取鼠标左键双击时的坐标,赋值变量zuobiao_1;然后控制电脑键盘同时按下一次ctrl和c并放开键盘,获取剪切板内容赋值给变量text_1;然后控制鼠标相对变量zuobiao_1向下移动45,控制鼠标左键单击一次并放开,获取此时鼠标左键单击时的坐标,赋值给变量zuobiao_2,控制鼠标相对变量zuobiao_2向右移动150,然后控制鼠标左键双击并放开,然后控制电脑键盘同时按下一次ctrl和c并放开键盘,获取剪切板内容赋值给变量text_2,使用正则匹配的方式对变量text_2中的文本进行处理,如果某一行同时匹配到“局”和“处”关键词或者匹配到“单位”关键词,就删除这一行,,将余下的文本信息赋值给变量text_3,在变量text_1前面拼接“落查信息:”并作为第一行和text_3拼接在一起,并赋值给变量text_2,最后控制鼠标移动到屏幕特定位置,控制鼠标左键单机并放开,控制键盘同时按下一次ctrl和v并放开,控制键盘按下一次enter并放开,将上述代码封装为一个函数。
时间: 2024-04-12 09:27:46 浏览: 149
好的,下面是使用 pyautogui 和 pyperclip 模块实现您描述的功能的代码示例:
```python
import pyautogui
import pyperclip
import re
def process_text(text):
lines = text.split('\n')
processed_lines = []
for line in lines:
if ('局' in line and '处' in line) or '单位' in line:
continue
processed_lines.append(line)
processed_text = '\n'.join(processed_lines)
return processed_text
def perform_action():
# 获取鼠标左键双击时的坐标
zuobiao_1 = pyautogui.position()
# 控制键盘按下一次ctrl和c并放开
pyautogui.hotkey('ctrl', 'c')
# 获取剪切板内容
text_1 = pyperclip.paste()
# 控制鼠标相对变量zuobiao_1向下移动45,并左键单击一次
pyautogui.moveTo(zuobiao_1[0], zuobiao_1[1]+45)
pyautogui.click()
# 获取鼠标左键单击时的坐标
zuobiao_2 = pyautogui.position()
# 控制鼠标相对变量zuobiao_2向右移动150,并左键双击一次
pyautogui.moveTo(zuobiao_2[0]+150, zuobiao_2[1])
pyautogui.doubleClick()
# 控制键盘按下一次ctrl和c并放开
pyautogui.hotkey('ctrl', 'c')
# 获取剪切板内容
text_2 = pyperclip.paste()
# 使用正则匹配对变量text_2中的文本进行处理
text_3 = process_text(text_2)
# 在变量text_1前面拼接“落查信息:”并与text_3拼接在一起
final_text = f"落查信息:{text_1}\n{text_3}"
# 控制鼠标移动到屏幕特定位置,并左键单击一次
pyautogui.moveTo(x, y)
pyautogui.click()
# 控制键盘按下一次ctrl和v并放开,然后按下一次enter并放开
pyautogui.hotkey('ctrl', 'v')
pyautogui.press('enter')
# 调用函数
perform_action()
```
请注意,您需要根据实际情况修改代码中的 `x` 和 `y` 值,以使鼠标移动到屏幕上的特定位置。另外,您还可以在函数中添加适当的异常处理和延时操作,以确保代码的稳定运行。
希望这可以帮助到您!如果您有任何其他问题,请随时提问。
阅读全文