python读取剪贴板报错 pywintypes.error: (1418, 'GetClipboardData', '\xcf\xdf\xb3\xcc\xc3\xbb\xd3\xd0\xb4\xf2\xbf\xaa\xb5\x

在封装读取剪贴板的时候,执行测试代码时遇到个错误:

pywintypes.error: (1418, 'GetClipboardData', '\xcf\xdf\xb3\xcc\xc3\xbb\xd3\xd0\xb4\xf2\xbf\xaa\xb5\x

 

代码:

#encoding=utf-8
import win32clipboard as w
import win32con
import time
class Clipboard(object):
#模拟Windows设置剪贴板

#读取剪贴板
@staticmethod
def getText():
#打开剪贴板
w.OpenClipboard()
#获取剪贴板中的数据
content=w.GetClipboardData(win32con.CF_TEXT)
#关闭剪贴板
w.CloseClipboard()
#返回剪贴板数据
return content


#设置剪贴板内容
@staticmethod
def setText(aString):
#打开剪贴板
w.OpenClipboard()
#清空剪贴板
w.EmptyClipboard()
#将数据aString写入剪贴板
w.SetClipboardData(win32con.CF_UNICODETEXT,aString)
#关闭剪贴板
w.CloseClipboard()
if __name__=='__main__':

Clipboard.setText(u'hey buddy!')
print Clipboard.getText()


然后在网上查,是因为设置了剪贴板内容之后,马上就读取剪贴板内容的话,可能这时候剪贴板的内容还没设置好,读取不到内容就会报错,

需要在设置剪贴板之后等几秒钟。

测试改成:

if __name__=='__main__':

Clipboard.setText(u'hey buddy!')
#time.sleep(3)
print Clipboard.getText()

结果:

C:\Python27\python.exe D:/test/hybrid_version2/util/keyboard.py
hey buddy!

Process finished with exit code 0

 

 

 

 



posted @ 2018-07-22 16:29  夏晓旭  阅读(1479)  评论(0编辑  收藏  举报