python通过pyperclip库操作剪贴板
pyperclip介绍
pyperclip是一个python库用于操作剪贴板,可以非常方便地将文本复制到剪贴板或从剪贴板获取文本。
通过pip进行安装:pip install pyperclip
pyperclip的github地址
pyperclip使用
复制到剪贴板
import pypercliptext = "Hello, World!"
pyperclip.copy(text)
从剪贴板读取
import pyperclipcopied_text = pyperclip.paste()
print(copied_text)
可以看出,pyperclip的核心功能是非常简单的,只需要这两个功能,就能发挥非常大的作用。
实际例子
生成当前时间复制到剪贴板
import pyperclip
import datetimecurrent_time = datetime.datetime.now().strftime("%Y-%m-%d %H:%M:%S")
pyperclip.copy(current_time)
运行程序以后,通过粘贴,就可以得到当前的时间。
替换剪贴板中的内容
import pypercliptext = pyperclip.paste()
new_text = text.replace("sb", "小可爱")pyperclip.copy(new_text)
print("替换后的文本已复制到剪贴板!")
运行程序以后,剪贴板的内容就会根据需要进行替换。
当你复制“你可真是一个sb“之后,运行程序,剪贴板的内容就会变为,”你可真是一个小可爱“。
密码管理器快速复制信息
import pyperclipusername = "sagegrass"
password = "123456"# 将用户名复制到剪贴板
pyperclip.copy(username)
print("用户名已复制到剪贴板")# 将密码复制到剪贴板
pyperclip.copy(password)
print("密码已复制到剪贴板")
实际使用中,应该分别复制,然后由用户进行依次粘贴。比如说,在密码管理器的界面上,可能提供一个“复制”的按钮,当点击这个按钮,就可以将内容安全的复制到剪贴板中。在密码管理器中,这样的实现是一个好的安全的方法,来保证密码不直接出现。
注意:如果复制以后的密码长时间存储于剪贴板中,同样可能存在安全风险,因此密码管理器通常会选择在几秒钟后,清除剪贴板上复制的内容。
import pyperclip
import timepassword = "123456"pyperclip.copy(password)
print("密码已复制到剪贴板")time.sleep(10)# 一定时间以后,如果发现剪贴板的内容还是密码
# 那么就用空内容将其清除
if pyperclip.paste() == password:pyperclip.copy("")
这样,在时间范围以内,仍然可以持续复制粘贴,但是时间到了以后,就不能继续使用了。
监听剪贴板变化
剪贴板可能是一个泄露隐私的关键位置,例如,如果有程序在监听剪贴板,那么你复制粘贴的所有内容,都会被其监测到。
import pyperclip
import timelast_text = pyperclip.paste()while True:time.sleep(0.5)# 检查剪贴板内容是否有变化current_text = pyperclip.paste()# 如果剪贴板的内容不一样了,那么就是变化了if current_text != last_text:print("剪贴板内容已更新:", current_text)last_text = current_text
注意:由于可能侵犯他人隐私,因此,不要随意使用这个功能,尤其是不应该利用该功能去窃取他人剪贴板!

从文本中提取邮箱
通过正则表达式,可以根据规则,从复制的文本中提取想要的内容。例如,根据规则,提取文本中出现的所有邮箱地址。
import pyperclip
import re# 从剪贴板获取文本
text = pyperclip.paste()# 使用正则表达式查找邮箱
email_pattern = r'[a-zA-Z0-9._%+-]+@[a-zA-Z0-9.-]+\.[a-zA-Z]{2,}'
emails = re.findall(email_pattern, text)if emails:# 将提取的邮箱复制到剪贴板pyperclip.copy(", ".join(emails))print("已提取邮箱并复制到剪贴板:", emails)
else:print("没有找到邮箱地址")
相关文章:
python通过pyperclip库操作剪贴板
pyperclip介绍 pyperclip是一个python库用于操作剪贴板,可以非常方便地将文本复制到剪贴板或从剪贴板获取文本。 通过pip进行安装:pip install pyperclip pyperclip的github地址 pyperclip使用 复制到剪贴板 import pypercliptext "Hello, Wo…...
LSTM——长短期记忆神经网络
目录 1.LSTM 工作原理 2.LSTM的代码实现 3.代码详解 LSTM(Long Short-Term Memory)是一种特殊的循环神经网络(RNN),用于解决长序列中的长期依赖问题。它通过引入门机制,控制信息的流入、保留和输出&…...
10进阶篇:运用第一性原理解答“是什么”类型题目
在667分析题题型中,关于“如何做”和“好处是什么”的题目,许多同学都能较好地运用前述的667作答地图开展答题,但是唯独在“是什么”类型题目(也可以叫做认识型题目),不知从何下手。这种题目通常要求我们理解、分析,并展望未来的发展方向,而结构化、逻辑清晰的答案往往…...
【elkb】索引生命周期管理
索引生命周期管理 Index lifecycle management(索引生命周期管理)是elasticsearch提供的一种用于自动管理索引的生命周期的功能。允许使用者定义索引的各个阶段,从创建至删除。并允许使用者在每个阶段定义索引需要执行的特定动作。这些动作包含索引创建,…...
江协科技STM32学习- P25 UART串口协议
🚀write in front🚀 🔎大家好,我是黄桃罐头,希望你看完之后,能对你有所帮助,不足请指正!共同学习交流 🎁欢迎各位→点赞👍 收藏⭐️ 留言📝…...
15分钟学 Go 第 22 天:包的使用
第22天:包的使用 欢迎来到Go语言的第22天!今天,我们将深入探讨如何创建和使用包。通过学习包的使用,你将能够更好组织你的代码,提高复用性和可维护性。 1. 包的概念 在Go语言中,包是代码的基本组织单位。…...
【Leecode】Leecode刷题之路第35天之搜索插入位置
题目出处 35-搜索插入位置-题目出处 题目描述 个人解法 思路: 1.依次遍历数组,看目标值是否在数组中 2.如果不在,将目标值插入数组(涉及到数组移动、扩容),返回下标代码示例:(Java…...
速盾:海外cdn高防
随着互联网的快速发展,网站的安全性和稳定性变得越来越重要。尤其是对于大型企业和电商平台来说,保护用户数据和维护网站稳定运行是至关重要的。为了应对日益增长的网络攻击和恶意访问,海外CDN高防服务成为了一种非常受欢迎的解决方案。 首先…...
图书管理系统(JDBC)
AdminUser是管理员类 NormalUser是用户类 AddOperation是增加图书类 BorrowOperation是借书类 DelOperation是删除图书类 ExitOperation是退出类 FindOperation是查找图书类 IOPeration是接口 ReturnOperation是还书类 ShowOperation是显示所有图书类 注意:…...
模板初阶及STL简介
目录 一.模板初阶 1.泛型函数 2.函数模板 1.函数模板概念 2.函数模板使用格式 3.函数模板的原理 4.函数模板的实例化 5.模板参数的匹配原则 3.类模板 1.类模板的定义格式 2.类模板的实例化 二.STL简介 1.什么是STL 2.STL的版本 3.STL的六大组件 4.如何学习STL …...
UE5 不同的编译模式下,module的组织形式
由于最近在琢磨UE5.4这个引擎,在学习过程中,碰到了一些非常有意思的事情,我在尝试把之前写的一些底层库搬到UE里面,比如底层库,网络库等等,我通过建立module,将这些库用源代码的方式整合进了UE5…...
【ms-swift 大模型微调实战】
安装环境 pip config set global.index-url https://pypi.tuna.tsinghua.edu.cn/simplepip install modelscope vllm ‘ms-swift[llm]’ -U 下载模型 modelscope download --model Qwen/Qwen2.5-7B-Instruct --local_dir ./Qwen2.5-7B-Instruct 微调 实验环境:…...
Linux:网络基础
计算机是人的工具,人需要协作,于是有了网络 专用服务器->专用计算机 局域网:随着计算机的数量增加,通过交换机和路由器连接计算机 广域网:将远隔千里的计算机都连在一起 协议 协议就是约定俗成 计算机之间用光信号…...
mysql 的内连接、左连接、右连接有什么区别?
在MySQL中,内连接、左连接和右连接是三种常见的连接类型,它们用于通过共享一个或多个字段的值,将两个或多个表组合在一起进行查询。以下是这三种连接类型的详细区别: 一、内连接(INNER JOIN) 定义&#x…...
update-alternatives(选择工具)
0 Preface/foreword 1 update-alternatives介绍 1.1 选项和用法 1.2 install用法 update-alternatives --install <link> <name> <path> <priority> [--slave <link> <name> <path>] link:符号链接(软链…...
php解密,sg11解密-sg15解密 如何由sourceGuardian11-sourceGuardian15加密(sg11加密~sg15加密)的源码
sg11加密~sg11加密的PHP文件运行需安装SG11加密-SG15加密组件使用、支持WINDOW及LINUX各版本 sg11解密(SourceGuardian)-sg15解密(SourceGuardian),号称目前最安全的组件加密已可以解密,解密率99.9%,基本可以直接使用,代码特征是…...
b站小土堆PyTorch视频学习笔记(二)
Dataloader:提供不同类型的数据集;为后面的网络提供不同的数据形式 Dataset:提供一种方式去获取数据及其label(标签) 主要实现以下两个功能: {如何获取每一个数据及其lable;告诉我们总共有多少数据} fr…...
Linux的压缩及其解压命令
1、zip文件 压缩 zip linux.zip linux 解压 unzip linux.zip 2、gz文件 压缩 gzip 1.tar 解压 gzip -d 1.tar.gz 3、tar文件(tar可打/解包,压缩/解压文件) 打包 tar -cf 1.rar test 解包 tar -xf 1.tar 解压gz并解包 tar -xjvf archive_name.tar.bz2&#…...
GXYCTF2019:gakki
把题目给的附件解压后给了张图片,顺带着瞟一眼属性,没有值得注意的 binwalk检测一手,看见有个rar压缩包 提取出来的压缩包是有密码的,但是题目并没有给出获取密码的途径,所以先爆破试试,用最常用的四位数爆…...
顺序表(C 语言)
目录 一、线性表二、顺序表1. 静态顺序表2. 动态顺序表2.1 动态顺序表的实现分析2.2 动态顺序表的实现2.3 动态顺序表存在的问题 三、与数组有关的面试题1. 移除元素2. 删除有序数组中的重复项 一、线性表 线性表(linear list)是n个具有相同特性的数据元…...
MPNet:旋转机械轻量化故障诊断模型详解python代码复现
目录 一、问题背景与挑战 二、MPNet核心架构 2.1 多分支特征融合模块(MBFM) 2.2 残差注意力金字塔模块(RAPM) 2.2.1 空间金字塔注意力(SPA) 2.2.2 金字塔残差块(PRBlock) 2.3 分类器设计 三、关键技术突破 3.1 多尺度特征融合 3.2 轻量化设计策略 3.3 抗噪声…...
JavaSec-RCE
简介 RCE(Remote Code Execution),可以分为:命令注入(Command Injection)、代码注入(Code Injection) 代码注入 1.漏洞场景:Groovy代码注入 Groovy是一种基于JVM的动态语言,语法简洁,支持闭包、动态类型和Java互操作性,…...
Prompt Tuning、P-Tuning、Prefix Tuning的区别
一、Prompt Tuning、P-Tuning、Prefix Tuning的区别 1. Prompt Tuning(提示调优) 核心思想:固定预训练模型参数,仅学习额外的连续提示向量(通常是嵌入层的一部分)。实现方式:在输入文本前添加可训练的连续向量(软提示),模型只更新这些提示参数。优势:参数量少(仅提…...
微信小程序 - 手机震动
一、界面 <button type"primary" bindtap"shortVibrate">短震动</button> <button type"primary" bindtap"longVibrate">长震动</button> 二、js逻辑代码 注:文档 https://developers.weixin.qq…...
GitHub 趋势日报 (2025年06月08日)
📊 由 TrendForge 系统生成 | 🌐 https://trendforge.devlive.org/ 🌐 本日报中的项目描述已自动翻译为中文 📈 今日获星趋势图 今日获星趋势图 884 cognee 566 dify 414 HumanSystemOptimization 414 omni-tools 321 note-gen …...
IT供电系统绝缘监测及故障定位解决方案
随着新能源的快速发展,光伏电站、储能系统及充电设备已广泛应用于现代能源网络。在光伏领域,IT供电系统凭借其持续供电性好、安全性高等优势成为光伏首选,但在长期运行中,例如老化、潮湿、隐裂、机械损伤等问题会影响光伏板绝缘层…...
关键领域软件测试的突围之路:如何破解安全与效率的平衡难题
在数字化浪潮席卷全球的今天,软件系统已成为国家关键领域的核心战斗力。不同于普通商业软件,这些承载着国家安全使命的软件系统面临着前所未有的质量挑战——如何在确保绝对安全的前提下,实现高效测试与快速迭代?这一命题正考验着…...
AI,如何重构理解、匹配与决策?
AI 时代,我们如何理解消费? 作者|王彬 封面|Unplash 人们通过信息理解世界。 曾几何时,PC 与移动互联网重塑了人们的购物路径:信息变得唾手可得,商品决策变得高度依赖内容。 但 AI 时代的来…...
排序算法总结(C++)
目录 一、稳定性二、排序算法选择、冒泡、插入排序归并排序随机快速排序堆排序基数排序计数排序 三、总结 一、稳定性 排序算法的稳定性是指:同样大小的样本 **(同样大小的数据)**在排序之后不会改变原始的相对次序。 稳定性对基础类型对象…...
【p2p、分布式,区块链笔记 MESH】Bluetooth蓝牙通信 BLE Mesh协议的拓扑结构 定向转发机制
目录 节点的功能承载层(GATT/Adv)局限性: 拓扑关系定向转发机制定向转发意义 CG 节点的功能 节点的功能由节点支持的特性和功能决定。所有节点都能够发送和接收网格消息。节点还可以选择支持一个或多个附加功能,如 Configuration …...
