繁体   English   中英

访问通过python复制到剪贴板的文本

[英]Accessing text copied to clipboard by python

因此,我希望能够使用python脚本复制文件夹的内容,然后将这些内容粘贴到我选择的位置,即文本文件,浏览器等...我遇到了用于复制文本的解决方案到剪贴板,但是当我实现此解决方案时,我无法粘贴任何内容。 我正在使用python 3.4。 下面是我正在使用的代码:

import os 
import tkinter as tk
import tkinter.filedialog

r = tk.Tk()
r.withdraw()
photo_path= tkinter.filedialog.askdirectory(title='Which folder would you like to copy the contents from?', initialdir='/')

# Get list of filenames in current directory
file_list=[]

for filename in os.listdir(photo_path):
    if os.path.splitext(filename)[1]=='.JPG':
        file_list.append(os.path.splitext(filename)[0])
    else: pass

file_search='code:('+' OR '.join(file_list)+')'

r.clipboard_clear()
r.clipboard_append(file_search)
r.destroy()

如果您在脚本结束之前不使用剪贴板内容,则将其丢弃。 使其保持运行状态,直到不再需要剪贴板内容为止。 以下程序将'1234'保留在剪贴板中10秒钟。 如果您在这段时间内不粘贴,则会丢失。 如果您在这段时间内粘贴了它,即使程序结束后它也将保留在剪贴板中。

import tkinter as tk

r = tk.Tk()
r.withdraw()

r.clipboard_clear()
r.clipboard_append('1234')
r.after(10000, lambda: r.destroy())
r.mainloop()

如何从python的(windows)剪贴板中读取文本?

“值得一提的是,在py34,win7中,如果没有事先调用EmptyClipboard,SetClipboardText将无法正常工作”

import win32clipboard

# set clipboard data
win32clipboard.OpenClipboard()
win32clipboard.SetClipboardText('testing 123')
win32clipboard.CloseClipboard()

# get clipboard data
win32clipboard.OpenClipboard()
data = win32clipboard.GetClipboardData()
win32clipboard.CloseClipboard()
print data

暂无
暂无

声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.

 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM