如何通过 NFTScan API 按照 NFT 合约地址检索数据?

news2024/11/20 23:25:43

在当前 NFT 市场还在不断扩张的背景下,各种 NFT 项目依旧是井喷式涌现,投资者和开发者都面临获取项目全貌数据的困境。公链上提取和处理大量的数据既费时又费力,缺乏全面的信息支持,将难以深入判断一个 NFT 项目的真实情况,严重制约了 NFT 数据应用的开发与投资决策,如何在海量复杂的数据中有效发掘价值,是一个亟待解决的难题。

NFTScan 主站数据显示,截至 2023 年 10 月 13 日 NFTScan 目前已支持的 18 条主流区块链网络共产生:NFT 合约数量 300 多万个;NFT 资产数量 12.5 亿枚;NFT 链上记录数量 4 亿条;NFT 资产总市值:$15,609,768,860;NFT 历史总交易额:$93,122,604,064。

NFTScan 提供的 API,开发者可以实现高效自动化地获取和处理海量 NFT 数据,无需人工操作和复杂判断,大大降低了开发成本。相比自主开发监测系统,使用 NFTScan 的标准化 API 直接构建,不仅省去了复杂的设计和开发过程,也减少了后续的维护和升级成本。 API 可以轻松实现高频率监测,降低人力成本。此外,NFTScan API 返回规范化的数据格式,使得开发和优化监测工具变得更加简单高效,自定义的参数设置也让开发者可以灵活地定制属于自己的解决方案。

怎样访问 NFTScan NFT API

创建 NFTScan 开发者账号

在开始使用 NFTScan API 之前,首先需要访问开发者网站并创建一个账户。前往 NFTScan 官方网站点击 NFTScan API “Sign Up”按钮进行注册。

登录后在 Dashboard(面板)上找到自己独有的 API KAY,将其复制。访问 API 文档,将自己的 API KEY 输进 API 文档的相应位置。根据文档的指引,就可以开始使用 API 服务了。在 API 文档中,开发者可以找到多种可供选择的接口模式,根据需求来选择最合适的接口。

在 Dashboard 中,开发人员还可以查看自己 API 使用情况的统计数据,帮助记录历史使用数据。不仅如此,NFTScan 还为每位注册开发者提供 1M CU 的 API 调用服务,用于请求所有的 NFT API 接口,并且 CU 永不过期,用完为止!

查看 API 文档

在成功注册开发者账号获取 API Key 后,您需要查看 NFTScan API 文档。API 文档包含了所有可以使用的 API 端点和参数,以及如何构建请求和处理响应的详细信息。请认真阅读 API 文档,并确保理解如何使用 API 来获取您需要的数据。NFTScan API 服务致力于帮助开发者改善获取 NFT 数据分析体验。

NFTScan 目前拥有全网最大最全的 NFT Collection 库,已支持 Ethereum、Solana、BNBChain、Bitcoin、TON、Polygon、zkSync、Aptos、Linea、Base、Avalanche、Arbitrum、Optimism、Fantom、Moonbeam、PlatON、Cronos、Gnosis 18 条区块链的 NFT 全量数据,所涵盖的 NFT 数据全、种类丰富,提供一整套的接口来获得 ERC721 和 ERC1155 资产以及交易、项目、市场统计等信息,现在支持 50 多个针对 EVM 兼容链的公共接口,以及针对 Solana、Aptos、Bitcoin 的一批相同模型的接口,很大程度上满足了开发者索引多种类型的 NFT 数据的需求。

按照 NFT 合约地址检索数据 API 类型

1/ Get NFTs by contract:/v2/assets/{contract_address}

该接口主要返回一个合约地址下的一组 NFT,开发者只需要选择输入任意 ERC-721 或 ERC-1155 标准的 NFT 项目合约地址,就可以获取该项目下所有 NFT 资产的完整数据。查询参数可选择 

latest_trade_price/latest_trade_time/rarity_rank(rarity_rank 仅适用于 ERC-721 协议),这里我们选择最后成交价来作为查询参数。

点击 Try it,查看返回首条数据:

合约地址为 0xbc4ca0eda7647a8ab7c2061c2e118a18a936f13d,合约名称为 BoredApeYachtClub,token id 为 7856,协议标准为 erc721,mint 地址,持有者地址,元数据 json 等等全部信息。

2/ Get transactions by contract:/v2/transactions/{contract_address}

允许开发者通过输入任意 NFT 项目的合约地址,可获取该项目在生命周期内所有 NFT 资产的历史交易信息。利用这个接口,开发者可以跳过解析链上原始交易的繁琐过程,直接获取干净可用的结构化交易数据。查询参数可选择交易的 NFT 事件类型(Mint/Transfer/Sale/Burn),使用 ';' 分隔多个事件。

这里我们选择了 Mint 的事件类型,输入自己的 api-key 之后,结果响应数据包含这笔 NFT 交易的所有关键数据,如交易哈希值、区块信息、From 和 To 地址、合约地址、交易时间戳等基础数据外,还有转账的 Token ID、交易金额和币种等 NFT 交易的特征信息。

3/ Get NFT owners by contract:/v2/asset/collection/amount

该接口主要返回一组协议标准为 erc-721 的 NFT 合约地址的持有者列表。开发者只需输入项目合约地址,该接口就会返回一个地址对象数组,每个对象包含持有者的钱包地址和其持有的该项目 NFT token_id。这里我们检索的是 BAYC 的持有者列表数据,可以看到共返回了 10000 个地址数据。

4/ Refresh NFT metadata by contract:/v2/refresh/metadata/contract

该接口可以帮助开发者或用户提交后台刷新元数据任务,该任务审核后会刷新提交的整个合约元数据。

构建相关 NFT API 请求

具体来说,开发者可以使用不同的语言来编写调用 NFTScan API 的代码如 Python、Java、JavaScript 等等 。例如在 Python 中,可以使用 requests 库来发起 API 请求;在 JavaScript 中可以使用 axios;在 Java 中可以用 OkHttp 或 Retrofit 等库。编写代码时,开发者只需组织好接口参数,如合约地址、API Key 等,调用对应的 NFTScan 接口,就可以方便地获取到标准化的 JSON 格式数据。

下面按使用 Python 来通过 NFTScan 的 API 请求一个 NFT 合约地址的历史交易情况,可以分为以下步骤:

步骤 1:导入必要的库

首先,导入 Python 的 requests 库,将用于发起 HTTP 请求和处理响应。

步骤 2:构建 API 请求

定义 NFTScan 的 API 基本 URL 和要查询的合约地址:

步骤 3:构建完整的 API 请求 URL

将合约地址添加到基本 URL 中,形成完整的 API 请求 URL:

步骤 4:发起 GET 请求

使用 requests 库发起 GET 请求并检查 HTTP 响应的状态码,状态码为 200 表示请求成功:

步骤 5:处理返回的数据

如果请求成功,解析 JSON 响应并处理历史交易数据。以下是一个示例处理历史交易数据的代码:

以上是一个基本示例来使用 Python 来发起 Get transactions by contract API 请求的基本示例。请注意,实际的代码可能需要更多的错误处理和数据分析,具体取决于开发者的需求。


About NFTScan

NFTScan 成立于 2021 年 4 月份,总部位于中国香港,是全球领先的 NFT 数据基础设施服务商,目前已支持 Bitcoin、Ethereum、BNBChain、Polygon、Solana、Linea、Arbitrum、Optimism、zkSync、Aptos 等在内的 18 条主流区块链网络。NFTScan 团队致力于为数以亿计的 Web3 用户提供简洁高效的 NFT 检索服务,为新一代金融科技公司提供安全稳定的多链 NFT 索引服务,用数据来推动 NFT 生态的繁荣发展!目前,NFTScan 在为包括 CMC、Binance NFT、Bybit Web3、KuCoin、HashKey Group 、SafePal、Mask、imToken、Enjin、Coin98、OneKey、TokenPocket、AlienSwap 等在内的 4000+ 开发者提供多链 NFT 数据支持!

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:http://www.coloradmin.cn/o/1088378.html

如若内容造成侵权/违法违规/事实不符,请联系多彩编程网进行投诉反馈,一经查实,立即删除!

相关文章

Vite项目打包构建优化(视图分析、CDN引入)

使用rollup-plugin-visualizer插件先分析模块占用空间 安装依赖:pnpm i rollup-plugin-visualizervite配置: plugins: [vue(), visualizer({filename: analysis.html, // 分析图生成的文件名open:true // 如果存在本地服务端口,将在打包后自…

Photoshop Lightroom 2024 (Lr2024)最新安装特别版

Adobe Photoshop Lightroom 2024是一款由Adobe Systems公司发布的软件,其英文直译为“明室”,也常被称为数码暗房。它主要用于图片管理和后期润色,包括图片导入、整理、编辑、导出等全过程,不仅可以对图片进行编辑,还可…

linux usb驱动移植(1)

1. USB总线 1.1 usb总线定义 在linux 设备模型中,总线由bus_type 结构表示,我们所用的 I2C、SPI、USB 都是用这个结构体来定义的。该结构体定义在 include/linux/device.h文件中: struct bus_type {const char *name;const c…

WiFi 6在工业物联网应用中有哪些优势?

Wi-Fi 6 (802.11ax)作为新一代应用成熟的无线通信技术,也被越来越广泛地部署在工业物联网中。WiFi 6 相比其前身 Wi-Fi 5 (802.11ac) 进行了多方面的改进提升,非常适合工业环境的苛刻要求。现在也有许多工业网关支持WiFi 6无线技术标准,为工业…

kantts docker化

kan-tts docker本地化 环境安装 下载docker镜像(python3.8的) registry.cn-hangzhou.aliyuncs.com/modelscope-repo/modelscope:ubuntu20.04-cuda11.8.0-py38-torch2.0.1-tf2.13.0-1.9.2 安装基础模型 pip install modelscope 安装语音模型 pip install "modelscope…

KubeSphere 社区双周报 | FluentBit 新增 tcp 输入插件 | 2023.09.29-10.12

KubeSphere 社区双周报主要整理展示新增的贡献者名单和证书、新增的讲师证书以及两周内提交过 commit 的贡献者,并对近期重要的 PR 进行解析,同时还包含了线上/线下活动和布道推广等一系列社区动态。 本次双周报涵盖时间为:2023.09.29-2023.…

2023年09月 C/C++(五级)真题解析#中国电子学会#全国青少年软件编程等级考试

C/C++编程(1~8级)全部真题・点这里 Python编程(1~6级)全部真题・点这里 第1题:红与黑 有一间长方形的房子,地上铺了红色、黑色两种颜色的正方形瓷砖。你站在其中一块黑色的瓷砖上,只能向相邻的黑色瓷砖移动。请写一个程序,计算你总共能够到达多少块黑色的瓷砖。 时间限…

【已解决】MySQL:执行sql查询出错误数据(MySQL隐藏机制-类型转换导致)

目录 问题现象: 问题分析: 结论: 解决方法: 拓展: 问题现象: 今天在项目开发中发现了一个非常奇怪的bug: 如图,我在数据库中以“dept_id 1712651046956421123”为条件&#xff…

【强烈推荐】免费的PDF工具,包括PDF拆分/分割、转WORD等功能的免费在线软件工具,救了大命,找了半天什么pdf365、福xipdf、还有哔果pdf全是打着免费名义收费,烦死了

PDF拆分 - 图文工具箱 - imgtool.net,嘎嘎好用,主要是免费 除此之外,还有其他的功能,需要的可以去看看

[42000][923] ORA-00923: 未找到要求的 FROM 关键字

在oracle数据库写分页查询,使用 rownum时候出错, 代码: SELECT *FROM (SELECT *, ROWNUM AS rnumFROM test t ) WHERE rnum BETWEEN 1 AND 5; 报错: [42000][923] ORA-00923: 未找到要求的 FROM 关键字 Position: 31 问题原因…

低代码平台为企业应用开发提速

一、背景 应用开发周期长一直是IT部门和业务部门面临的问题。 IT部门总是被新的应用需求弄得不堪重负。他们不可能完成业务部门想要完成的每一个项目。同时,业务部门的用户厌倦了等待,并开始完全绕过IT部门。 今天,我们来探索一下“低代码开发…

浅谈压力测试的作用是什么

随着现代应用程序变得越来越复杂,用户的期望也在不断提高,对性能和可靠性的要求变得更加苛刻。在应用程序开发和维护的过程中,压力测试是一项至关重要的活动,它可以帮助发现潜在的问题、评估系统的性能极限,以及确保在…

js内存与数据

1.内存空间的重要性 想要对js理解更深刻,就需要对内存空间有个清晰的认知。 比如基本和引用数据类型存储方式和引用传递到底是怎么回事? 栈内存与堆内存的区别? 2.计算机存储空间 内存:容量小 访问速度快 程序运行时&#xff…

微型导轨可用在哪些设备上?

微型导轨是一种高精度、小体积的导轨系统,被广泛应用于各种需要高精度导向的场合。以下是一些常见的微型导轨应用场景: 1、半导体设备:在半导体制造过程中,设备需要精确、高速和稳定的运动。微型导轨具有高精度和高刚性&#xff0…

【管理运筹学】第 10 章 | 排队论(1,排队论的基本概念)

文章目录 引言一、基本概念1.1 排队过程1.2 排队系统的组成和特征1.3 排队模型的分类1.4 系统指标1.5 系统状态 引言 开一点排队论的内容吧,方便做题。 排队论(Queuing Theory)也称随机服务系统理论,是为解决一系列排队问题&…

工业互联网系列1 - 智能制造中有哪些数据在传输

工业互联网以网络为基础,需要传输的数据种类多种多样,这些数据对于实时监控、生产优化、设备维护和决策支持等方面都至关重要。 以下是一些常见智能制造业中需要传输的数据类型: 传感器数据:制造设备上安装的传感器(如…

高效视频剪辑:批量合并视频与背景音乐结合的技巧解析

在数字媒体时代,视频剪辑已经成为了一种重要的技能。其中,批量合并视频与添加背景音乐是视频剪辑过程中不可忽视的环节。本文将为您提供高效地合并视频和背景音乐的技巧解析,帮助您更快速地完成视频剪辑,创作出更加生动有趣的视频…

加固数据安全:Java助力保护Excel文件,让数据无懈可击

摘要:本文由葡萄城技术团队于CSDN原创并首发。转载请注明出处:葡萄城官网,葡萄城为开发者提供专业的开发工具、解决方案和服务,赋能开发者。 前言 Excel文件保护是常用的一种功能,文件保护主要有三种: 添…

OLED透明拼接屏:福州鼓山风景区:徜徉于城市壮丽之

福州是中国福建省的省会城市,历史悠久,文化底蕴深厚。 该城市曾是唐宋时期的重要港口城市,也是丝绸之路海上丝绸之路的起点之一。 福州以其独特的地理位置和丰富的历史遗产而闻名于世。 福州拥有众多的历史景点,其中最著名的是…

掌动智能浅析Web自动化测试的重要性

在现代Web开发中,确保Web应用程序的质量和稳定性至关重要。Web自动化测试工具成为了开发团队的关键资源,帮助他们自动化测试流程、减少手动劳动,提高测试覆盖率和效率。本文将介绍Web自动化测试的重要性是什么! Web自动化测试的重要性&#x…