python 获取剪切板内容的两种方法

(编辑:jimmy 日期: 2024/11/11 浏览:2)

第一种

# -*- coding: utf-8 -*-
# @Time : 2020/3/16 21:26
# @File : get_text_from_cupboard_13.py
# @Author: Hero Liu
# python读取剪切板内容
import win32clipboard as w
import win32con


def get_text():
  w.OpenClipboard()
  d = w.GetClipboardData(win32con.CF_TEXT)
  w.CloseClipboard()
  return d.decode('GBK')


def set_text(aString):
  w.OpenClipboard()
  w.EmptyClipboard()
  w.SetClipboardData(win32con.CF_TEXT, aString)
  w.CloseClipboard()


# 读取剪切板内容
ss = get_text()

第二种

待实现需求:将目标值先写入粘贴板、然后模拟键盘的Ctrl+V获取已写入粘贴板的内容。

所需的文件:ClipboardUtil.py、TestSendMain.py

ClipboardUtil.py文件的内容:

# -*- coding: utf-8 -*-
#用于实现将数据设置到剪贴板中

import win32clipboard as w
import win32con

class Clipboard():
  """
  模拟Windows设置剪贴板
  """
  # 读取剪贴板
  @staticmethod
  def getText():
    # 打开剪贴板
    w.OpenClipboard()
    # 读取剪贴板中的数据
    d = w.GetClipboardData(win32con.CF_UNICODETEXT)
    # 关闭剪贴板
    w.CloseClipboard()
    # 将读取的数据返回,提供给调用者
    return d

  # 设置剪贴板内容
  @staticmethod
  def setText(aString):
    # 打开剪贴板
    w.OpenClipboard()
    # 清空剪贴板
    w.EmptyClipboard()
    # 将数据astring写入剪贴板中
    w.SetClipboardData(win32con.CF_UNICODETEXT,aString)
    # 关闭剪贴板
    w.CloseClipboard()

TestSendMain.py文件的内容:

# 导入ClipboardUtil 文件
from util.ClipboardUtil import Clipboard
  # 调用setText设置剪贴板内容
  Clipboard.setText("D:\Test_Clas\KeyWordDriverWork\ceshi1.jpg")
  # 从剪贴板获取刚才设置到剪贴板的内容
  Clipboard.getText()
  # 操作需要输入粘贴板内容的标签
  getElement(driver,"xpath","//span[text()='点击上传']").click()
  time.sleep(1)
  # 模拟键盘组合键Ctrl+v将剪贴板的内容复制到搜索输入框中
  KeyboardKeys.twoKeys("ctrl","v")
  # 模拟enter键来点击确认按钮
  KeyboardKeys.onekey("enter")

以上就是python 获取剪切板内容的两种方法的详细内容,更多关于python 剪切板的资料请关注其它相关文章!