使用Selenium绕过Cloudflare后自动复制加密货币合约地址
实现Dexscreener合约地址自动获取(Cloudflare绕过版)
需求说明
需要从Dexscreener指定页面获取加密货币合约地址,该地址可通过页面按钮自动复制。已通过DrissionPage实现Cloudflare反检测绕过,需补充代码完成以下操作:
- 跳转至目标页面
- 点击复制按钮
- 输出复制的合约地址
完整代码实现
from time import sleep from DrissionPage import ChromiumPage # 初始化浏览器实例 p = ChromiumPage() # 跳转至目标页面 p.get('https://dexscreener.com/solana/7bzzop3qb2zk3r7wqrzjs5fpeeergdy3hgzxxrn97aey') # 等待页面完全加载 sleep(5) # 定位复制合约地址的按钮(需根据页面实际元素调整选择器) # 可通过F12查看按钮的CSS选择器/XPath,示例为常见的页面按钮选择器 copy_button = p.ele('css:button[aria-label="Copy contract address"]') # 执行点击操作 copy_button.click() # 等待剪贴板写入完成 sleep(1) # 读取剪贴板中的合约地址 contract_address = p.clipboard # 输出结果 print(f"合约地址:{contract_address}") # 关闭浏览器实例 p.quit()
关键注意事项
- 选择器适配:代码中的按钮选择器为示例,需打开目标页面按F12检查元素,替换为复制按钮的实际CSS选择器或XPath。例如按钮带有
copy-contract类名的话,可改为p.ele('css:.copy-contract')。 - 等待时长调整:
sleep()的参数可根据网络速度调整,确保页面元素加载完成后再执行后续操作。 - 版本兼容性:确保使用最新版DrissionPage,避免因版本差异导致的元素定位或操作失败。
内容的提问来源于stack exchange,提问作者Deogratius Tiisekwa
相关产品推荐
相关产品推荐

