Python 技术篇-利用pyqt5库读取剪切板已复制数据的格式类型实例演示,python判断复制文件的文件类型(转载)

首先介绍下复制内容类型的几种分类:
[‘text/plain’] 是纯文本类型。
[‘text/html’, ‘text/plain’] 是 html 的格式 + 文本类型,找个网页复制一段文字就可以获得这个效果。
如果是文件类型,其格式信息如下:

[‘application/x-qt-windows-mime;value=“Shell IDList Array”’, ‘application/x-qt-w
indows-mime;value=“DataObjectAttributes”’, ‘application/x-qt-windows-mime;value=
“DataObjectAttributesRequiringElevation”’, ‘application/x-qt-windows-mime;value=
“Shell Object Offsets”’, ‘application/x-qt-windows-mime;value=“Preferred DropEff
ect”’, ‘application/x-qt-windows-mime;value=“AsyncFlag”’, ‘text/uri-list’, ‘appl
ication/x-qt-windows-mime;value=“FileName”’, ‘application/x-qt-windows-mime;valu
e=“FileNameW”’]
1
2
3
4
5
6
7
当为文件类型时,可以通过 urls() 获取文件路径:

“PyQt5.QtCore.QUrl(‘file:///C:/Users/Public/Pictures/Sample Pictures/Desert.jpg’)”
1
再通过文件的扩展名可判断文件类型:

s = “PyQt5.QtCore.QUrl(‘file:///C:/Users/Public/Pictures/Sample Pictures/Desert.jpg’)”

index1 = len(s) - s[::-1].index(".");
index2 = s.index("’)");
print(“提取的类型为:” + s[index1:index2])
1
2
3
4
5
完整代码如下:

from PyQt5.QtWidgets import *

app = QApplication([])
clipboard = app.clipboard()
data = clipboard.mimeData()

获取格式信息

print(data.formats())
if(data.hasFormat(‘text/uri-list’)):
for path in data.urls():
# 打印复制的路径
print(path)
# 提取字符串
s = str(path)
index1 = len(s) - s[::-1].index(".");
index2 = s.index("’)");
print(“提取的类型为:” + s[index1:index2])

如果是纯文本类型,打印文本的值

if(data.formats() == [‘text/plain’]):
print(data.text());

原文链接:https://blog.youkuaiyun.com/qq_38161040/article/details/108081711?utm_medium=distribute.pc_feed.none-task-blog-personrec_tag-13.nonecase&depth_1-utm_source=distribute.pc_feed.none-task-blog-personrec_tag-13.nonecase&request_id=5f4726e50388ae0b5643d93f

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值