本文主要是介绍Python 技术篇-用pywin32库实现读写剪贴板,希望对大家解决编程问题提供一定的参考价值,需要的开发者们随着小编来一起学习吧!
我们需要 pywin32 库,没有的话可以看下安装教程。
pywin32库安装教程
# -*- coding: UTF8 -*-
import win32clipboard as wc
import win32con# 获取剪切板内容
def getCopy():wc.OpenClipboard()t = wc.GetClipboardData(win32con.CF_UNICODETEXT)wc.CloseClipboard()return t# 写入剪切板内容
def setCopy(str):wc.OpenClipboard()wc.EmptyClipboard()wc.SetClipboardData(win32con.CF_UNICODETEXT, str)wc.CloseClipboard()setCopy("中文English")
print(getCopy())
强调一点,网上很多人将 win32con.CF_UNICODETEXT 写成 win32con.CF_TEXT,这个是需要转码的,不然中文会有乱码,而且写入剪贴板的英文中间会有空格。
乱码问题:
TEXT 的编码格式是 GB2312 的,如果中文用 UTF-8 打出就会是乱码。
如果只是获取剪贴板内容的话在 getCopy() 加个 .decode(“GB2312”) 就好了。
乱码的原因有很多可能,这只是其中一种可能。
英文中间夹空格问题:
空格的原因是写入的英文是一个字节,GB2312 是两个字节,他们转化之后还是就会是在后面加一个字节的空格来占位置。比如 hello 打印出来的效果就是 h e l l o。
喜欢的点个赞❤吧!
这篇关于Python 技术篇-用pywin32库实现读写剪贴板的文章就介绍到这儿,希望我们推荐的文章对编程师们有所帮助!