def get_clipboard_with_db[db]: class Entry[db.Model]: id = db.Column[db.Integer, primary_key=True] content = db.Column[db.String[8*1024], unique=False, nullable=False] time = db.Column[db.String[120], unique=False, nullable=False] IP = db.Column[db.String[39], unique=False, nullable=False] # 39 because could be ipv6 def __repr__[self]: return '' % self.time class Clipboard[object]: def __init__[self]: db.create_all[] try: self.entries = {e.id: e for e in Entry.query.all[]} except OperationalError: self.entries = {} def __iter__[self]: return iter[self.entries] def add[self, content, time, IP]: e = Entry[content=content, time=time, IP=IP] db.session.add[e] db.session.commit[] self.entries[e.id] = e return None def edit[self, id, content]: e = Entry.query.filter_by[id=id].first[] e.content = content db.session.commit[] self.entries[e.id] = e def delete[self, id]: e = self.entries[id] e_ = db.session.merge[e] db.session.delete[e_] db.session.commit[] del self.entries[e.id] return None def __len__[self]: return len[self.entries.keys[]] return Clipboard[]
Cách sao chép văn bản vào khay nhớ tạm trong Python
Bởi Artturi Jalli
Để sao chép văn bản vào khay nhớ tạm trong Python, hãy sử dụng mô-đun pyperclip
Trước khi bạn có thể sử dụng mô-đun, bạn cần cài đặt nó với
pip install pyperclip
Sau đó, bạn có thể sử dụng phương thức copy[] của nó để sao chép văn bản vào khay nhớ tạm bằng cách
import pyperclip s1 = "Hello world" pyperclip.copy[s1] s2 = pyperclip.paste[] print[s2]
đầu ra
Hello world
Phần kết luận
Cảm ơn vì đã đọc. Tôi hy vọng bạn tìm thấy những gì bạn đang tìm kiếm
Mã hóa vui vẻ
Đọc thêm
Thủ thuật Python
Cách ghi vào tệp bằng Python
Câu lệnh with trong Python
Rất dễ dàng để thực hiện các thao tác sao chép/dán Clipboard bằng cách sử dụng ctrl+c và ctrl+v , bạn có thể nghĩ rằng việc thực hiện các thao tác trong clipboard bằng ngôn ngữ lập trình có thể khó khăn, nhưng chúng ta có thể thực hiện điều này rất dễ dàng với vài dòng mã bằng python. Python có các thư viện chỉ dành riêng cho các hoạt động của khay nhớ tạm. Trong bài viết ngắn này, chúng ta sẽ xem ba thư viện python như vậy
pyperclip có các phương thức copy[] và paste[] để thực hiện thao tác sao chép/dán. Nó là một thư viện đa nền tảng, có nghĩa là chúng ta có thể sử dụng thư viện này trên các hệ điều hành khác nhau. Trước tiên, hãy xem xét các phụ thuộc của pyperclip cần có trong các hệ điều hành khác nhau
Trên Windows, không cần thêm mô-đun
Trên máy Mac, mô-đun pyobjc được sử dụng, quay lại pbcopy và pbpaste cli
mệnh lệnh. [Các lệnh này nên đi kèm với OS X. ]
Trên Linux, cài đặt xclip, xsel hoặc wl-clipboard [dành cho phiên “wayland”] thông qua trình quản lý gói
Ví dụ, trong Debian
Sudo apt-get cài đặt xclip
sudo apt-get cài đặt xsel
Sudo apt-get cài đặt wl-clipboard
Phương pháp để thực hiện sao chép/dán
Pyperclip có các phương thức copy[] và paste[] để thực hiện các thao tác
import pyperclip as pc
x = "Data to be copied to clipboard"
pc.copy[x]
a = pc.paste[]
print[a]
đầu ra
Data to be copied to clipboard
Pyperclip sẽ chuyển đổi mọi loại dữ liệu thành chuỗi
print[type[a]]#output
Các phương pháp khác của pyperclip
- xác định_clipboard[]
Xác định hệ điều hành/nền tảng và thiết lập các hàm copy[] và paste[]
phù hợp
2. waitForNewPaste[thời gian chờ=Không có]
Chức năng này gọi khối cho đến khi một chuỗi văn bản mới tồn tại trên
khay nhớ tạm khác với văn bản ở đó khi chức năng
lần đầu tiên được gọi. Nó trả về văn bản này
Hàm này tăng PyperclipTimeoutException nếu thời gian chờ được đặt thành
một số giây đã trôi qua mà không có văn bản không trống nào được đưa vào
bảng tạm
3. waitForPaste [thời gian chờ = Không]
Hàm này gọi các khối cho đến khi tồn tại một chuỗi văn bản không trống trên
bảng tạm. Nó trả về văn bản này
Hàm này tăng PyperclipTimeoutException nếu thời gian chờ được đặt thành
một số giây đã trôi qua mà không có văn bản không trống nào được đưa vào
bảng tạm
4. set_clipboard[bảng tạm]. Đặt rõ ràng cơ chế clipboard
pyperclip3Mô-đun này tương tự như pyperclip, tất cả các phương thức có sẵn trong pyperclip cũng có trong mô-đun này. Sự khác biệt duy nhất là, nó chuyển đổi mọi loại dữ liệu thành byte
import pyperclip3 as pc
x = "Data to be copied to clipboard"
pc.copy[x]
a = pc.paste[]
print[a]
print[type[a]]
đầu ra
b'Data to be copied to clipboard'
bảng tạmMô-đun này chỉ có các phương thức copy[] và paste[]. Các phương pháp khác có sẵn trong các thư viện trước đây không có sẵn trong mô-đun này
import clipboard as c
x = "Data to be copied to clipboard"
c.copy[x]
a = c.paste[]
print[a]
print[type[a]]
đầu ra
Data to be copied to clipboard
Phần kết luận
Chúng tôi đã thấy ba mô-đun python [pyperclip, pyperclip3, clipboard] chỉ dành riêng để thực hiện các thao tác với khay nhớ tạm. Tuy nhiên, có những gói trong Python, có các phương thức tích hợp để thực hiện thao tác với khay nhớ tạm, ví dụ: to_clipboard của gấu trúc, tkinter tương tự, PyQT có các phương thức riêng để thực hiện thao tác với khay nhớ tạm