Python监听剪切板实现方法代码实例


Posted in Python onNovember 11, 2020

第一种

import win32clipboard
import time
#速度快 容易出错
class niubi():
  def lihai(self):
    while True:
      #jianting().main()
      t = jianting().main()
      print(t)

class jianting():
  def clipboard_get(self):
    """获取剪贴板数据"""
    win32clipboard.OpenClipboard()
    data = win32clipboard.GetClipboardData(win32clipboard.CF_UNICODETEXT)
    win32clipboard.CloseClipboard()
    return data

  def main(self):
    """后台脚本:每隔0.2秒,读取剪切板文本,检查有无指定字符或字符串,如果有则执行替换"""
    # recent_txt 存放最近一次剪切板文本,初始化值只多执行一次paste函数读取和替换
    recent_txt = self.clipboard_get()
    while True:
      # txt 存放当前剪切板文本
      txt = self.clipboard_get()
      # 剪切板内容和上一次对比如有变动,再进行内容判断,判断后如果发现有指定字符在其中的话,再执行替换
      if txt != recent_txt:
        # print(f'txt:{txt}')
        recent_txt = txt # 没查到要替换的子串,返回None
        return recent_txt

      # 检测间隔(延迟0.2秒)
      time.sleep(0.2)

if __name__ == '__main__':
  niubi().lihai()

速度快,但很容易出错, 一般人感觉不出来速度。 不建议使用。

第二种

import pyperclip
import time

#稳定不出错
class niubi():
  def lihai(self):
    while True:
      #jianting().main()
      t = jianting().main()
      print(t)
class jianting():
  def clipboard_get(self):
    """获取剪贴板数据"""
    data = pyperclip.paste() #主要这里差别
    return data

  def main(self):
    """后台脚本:每隔0.2秒,读取剪切板文本,检查有无指定字符或字符串,如果有则执行替换"""
    # recent_txt 存放最近一次剪切板文本,初始化值只多执行一次paste函数读取和替换
    recent_txt = self.clipboard_get()
    while True:
      # txt 存放当前剪切板文本
      txt = self.clipboard_get()
      # 剪切板内容和上一次对比如有变动,再进行内容判断,判断后如果发现有指定字符在其中的话,再执行替换
      if txt != recent_txt:
        # print(f'txt:{txt}')
        recent_txt = txt # 没查到要替换的子串,返回None
        return recent_txt

      # 检测间隔(延迟0.2秒)
      time.sleep(0.2)

if __name__ == '__main__':
  niubi().lihai()

我一般把第二种 用在程序中。

以上就是本文的全部内容,希望对大家的学习有所帮助,也希望大家多多支持三水点靠木。

Python 相关文章推荐
django之常用命令详解
Jun 30 Python
TensorFlow安装及jupyter notebook配置方法
Sep 08 Python
遗传算法python版
Mar 19 Python
Python3 jupyter notebook 服务器搭建过程
Nov 30 Python
python学生管理系统学习笔记
Mar 19 Python
使用Python Pandas处理亿级数据的方法
Jun 24 Python
Django CSRF跨站请求伪造防护过程解析
Jul 31 Python
python标记语句块使用方法总结
Aug 05 Python
python 进程间数据共享multiProcess.Manger实现解析
Sep 23 Python
详解使用Python下载文件的几种方法
Oct 13 Python
Docker如何部署Python项目的实现详解
Oct 26 Python
Python 实现二叉查找树的示例代码
Dec 21 Python
如何通过python计算圆周率PI
Nov 11 #Python
python中turtle库的简单使用教程
Nov 11 #Python
python 怎样进行内存管理
Nov 10 #Python
python tqdm实现进度条的示例代码
Nov 10 #Python
python 解决Windows平台上路径有空格的问题
Nov 10 #Python
Python在后台自动解压各种压缩文件的实现方法
Nov 10 #Python
Python高阶函数与装饰器函数的深入讲解
Nov 10 #Python
You might like
php通过array_unshift函数添加多个变量到数组前端的方法
2015/03/18 PHP
PHP ajax 异步执行不等待执行结果的处理方法
2015/05/27 PHP
php实现数组中索引关联数据转换成json对象的方法
2015/07/08 PHP
PHP接收App端发送文件流的方法
2016/09/23 PHP
Laravel框架使用monolog_mysql实现将系统日志信息保存到mysql数据库的方法
2018/08/16 PHP
JS效率个人经验谈(8-15更新),加入range技巧
2007/01/09 Javascript
js 动态文字滚动的例子
2011/01/17 Javascript
javascript 获取图片尺寸及放大图片
2013/09/04 Javascript
浅谈JavaScript实现面向对象中的类
2014/12/09 Javascript
javascript中scrollTop详解
2015/04/13 Javascript
JavaScript中Number.MIN_VALUE属性的使用示例
2015/06/04 Javascript
nodejs搭建本地服务器并访问文件的方法
2017/03/03 NodeJs
bootstrap table方法之expandRow-collapseRow展开或关闭当前行数据
2020/08/09 Javascript
JavaScript使用math.js进行精确计算操作示例
2018/06/19 Javascript
React注册倒计时功能的实现
2018/09/06 Javascript
vue基础之data存储数据及v-for循环用法示例
2019/03/08 Javascript
浅谈TypeScript的类型保护机制
2020/02/23 Javascript
React 条件渲染最佳实践小结(7种)
2020/09/27 Javascript
[02:59]DOTA2完美大师赛主赛事第三日精彩集锦
2017/11/25 DOTA
Python多图片合并PDF的方法
2019/01/03 Python
pyqt5 禁止窗口最大化和禁止窗口拉伸的方法
2019/06/18 Python
python数据类型之间怎么转换技巧分享
2019/08/20 Python
基于python中__add__函数的用法
2019/11/25 Python
python操作cfg配置文件方式
2019/12/22 Python
Python之Class&Object用法详解
2019/12/25 Python
PyCharm License Activation激活码失效问题的解决方法(图文详解)
2020/03/12 Python
Python虚拟环境的创建和包下载过程分析
2020/06/19 Python
通过自学python能找到工作吗
2020/06/21 Python
Python filter过滤器原理及实例应用
2020/08/18 Python
男女钓鱼靴和甲板鞋:XTRATUF
2021/01/09 全球购物
自荐信需注意事项
2014/01/25 职场文书
高中数学教学反思
2014/01/30 职场文书
中考标语大全
2014/06/05 职场文书
《小乌鸦爱妈妈》教学反思
2016/02/19 职场文书
世界十大狙击步枪排行榜
2022/03/20 杂记
聊聊mysql都有哪几种分区方式
2022/04/13 MySQL