需要用到win32con
和win32clipboard
模块,一般自带,没有就pip安装下
常用方法
OpenClipboard()
打开粘贴板,要使用前必须得先打开
EmptyClipboard()
清空粘贴板
GetClipboardData()
获取粘贴板内容,举例:
import win32con #控制粘贴板
import win32clipboard as wincld
wincld.OpenClipboard()
copy_text = wincld.GetClipboardData(win32con.CF_TEXT)
print(copy_text.decode("gbk"))
#将粘贴板内容按gbk解码后输出
wincld.CloseClipboard()
SetClipboardData()
设置粘贴板的内容,举例:
result_text = "这句话将被拷到粘贴板"
wincld.OpenClipboard()
wincld.EmptyClipboard()
wincld.SetClipboardData(win32con.CF_UNICODETEXT, result_text)
wincld.CloseClipboard()
CloseClipboard()
关闭粘贴板,使用完记得关闭,否则下次打开可能会出问题
注:
粘贴板关闭可能需要时间,所以最好在下次打开粘贴板前通过time.sleep()
设置时间断点,以免遇到粘贴板打开失败的情况
实例-将粘贴板内容加上括号
import win32con #控制粘贴板
import win32clipboard as wincld
import time
time.sleep(0.5) #设置断点,确保剪切板在打开前已经关闭
wincld.OpenClipboard()
copy_text = wincld.GetClipboardData(win32con.CF_TEXT)
decode_text = copy_text.decode("gbk")
set_text = "(" + decode_text + ")"
print(set_text)
wincld.SetClipboardData(win32con.CF_UNICODETEXT, set_text)
wincld.CloseClipboard()