You need to enable JavaScript to run this app.
优惠活动
大模型
产品
解决方案
定价
更多

Selenium+Python点击网页复制按钮后如何获取剪贴板内容到程序

实现方法

你可以通过以下两种常用方案获取剪贴板内的地址内容:

方案1:使用pyperclip库读取系统剪贴板(最简单通用)

  1. 先安装依赖库:
pip install pyperclip

如果是Linux系统,还需要安装系统依赖:

# Debian/Ubuntu 系列
sudo apt install xclip
# CentOS/RHEL 系列
sudo yum install xclip
  1. 修改你的代码,在执行完复制操作后调用pyperclip读取剪贴板即可,修改后的完整代码示例:
from selenium import webdriver
from selenium.webdriver.common.action_chains import ActionChains
import pyperclip

driver = webdriver.Firefox()
driver.get('https://opensea.io/accounts/sartoshi_nft')
driver.execute_script("document.body.style.transform='scale(0.5)';")

action = ActionChains(driver)
# 注意:Selenium 4+ 已弃用find_element_by_xpath写法,推荐改用By类写法,需要提前导入from selenium.webdriver.common.by import By
# elem = driver.find_element(By.XPATH, '//*[@id="__next"]/div[1]/div/div/main/div/div/div[1]/div[2]/div[3]/button[2]/i')
elem = driver.find_element_by_xpath('//*[@id="__next"]/div[1]/div/div/main/div/div/div[1]/div[2]/div[3]/button[2]/i')

action.double_click(on_element = elem)
action.perform()

# 读取剪贴板内容
address = pyperclip.paste()
print("获取到的地址:", address)

方案2:通过Selenium执行JS直接读取剪贴板(无需额外Python依赖)

你也可以直接调用浏览器的剪贴板API读取内容,不需要安装第三方Python库:

# 在执行完复制操作后添加以下代码
address = driver.execute_async_script("""
  const callback = arguments[arguments.length - 1];
  navigator.clipboard.readText().then(text => callback(text));
""")
print("获取到的地址:", address)

注意:该方案需要浏览器授予页面剪贴板读取权限,Firefox默认对本地自动化测试的页面权限限制较松可直接使用,若遇到权限问题可在启动浏览器时提前配置权限参数。


内容的提问来源于stack exchange,提问作者KingPluto

相关产品推荐
方舟 Agent Plan

超全模态模型 × Harness 升级,最新支持 Deepseek-V4.1-Flash、GLM-5.3 系列、Doubao-Seedream-5.0-pro、Kimi-K3 (部分), 限时 9.9 元起

最近更新时间:2026.10.20 04:27:03