在数据分析与跟踪中,实时获取加密货币市场价格至关重要。以往通过网页抓取的方式可能因网站结构更新而失效,因此本文将介绍一种更稳定的方法:利用自定义函数和 API 直接在 Google Sheets 中导入并自动刷新加密货币数据。
这种方法不仅灵活、可定制,还能免去维护爬虫脚本的麻烦。接下来,我们将分步说明如何创建自定义函数并设置定时刷新。
创建 getCoinInfo 自定义函数
通过自定义函数,你可以自由选择要显示的加密货币信息,并直接从 API 获取数据,避免依赖容易变更的网页结构。
注册 API 访问权限
首先,需在 LiveCoinWatch 平台注册账号以获取 API 密钥。该平台提供可靠的实时加密货币数据接口,支持多种数字资产信息查询。
编写自定义函数
在 Google Sheets 中依次点击“扩展程序”→“Apps Script”,打开脚本编辑器,粘贴以下代码:
function getCoinInfo(coinCode, currency, attribute) {
var apiKey = 'YOUR_API_KEY_HERE';
var url = 'https://api.livecoinwatch.com/coins/single';
var options = {
'method': 'POST',
'headers': {
'x-api-key': apiKey,
'Content-Type': 'application/json'
},
'payload': JSON.stringify({
'currency': currency,
'code': coinCode,
'meta': true
})
};
var response = UrlFetchApp.fetch(url, options);
var data = JSON.parse(response.getContentText());
return data[attribute];
}将 YOUR_API_KEY_HERE 替换为你在 LiveCoinWatch 获取的实际 API 密钥。
使用函数查询数据
在单元格中输入函数格式:=getCoinInfo("BTC", "USD", "rate"),即可获取比特币的美元价格。你还可以查询其他属性,如市值、交易量等。
设置数据自动刷新
Google Sheets 默认不会自动刷新自定义函数,但可通过 Apps Script 的时间触发器实现定时更新。
创建刷新触发器
在脚本编辑器中,点击左侧“触发器”图标,添加新触发器,设置如下:
- 选择函数:
refreshData - 选择事件类型:
时间驱动 - 设置间隔:如每小时或每30分钟
编写刷新脚本
在脚本编辑器中添加以下函数:
function refreshData() {
var sheet = SpreadsheetApp.getActiveSpreadsheet();
var range = sheet.getRange("A1");
var value = range.getValue();
range.setValue(value);
}该脚本通过重写单元格值触发整个表格的公式重新计算,从而更新加密货币数据。
常见问题
是否需要编程经验?
基本操作无需深厚编程基础,复制粘贴代码即可使用。若需高级定制,则需了解 JavaScript 和 API 相关知识。
此方法是否免费?
LiveCoinWatch 提供有限次数的免费 API 调用,适用于个人及轻度使用。如需高频请求,需升级至付费计划。
支持哪些加密货币?
支持包括比特币、以太坊在内的数千种加密货币,具体可查阅 LiveCoinWatch 的官方文档。
数据刷新频率如何控制?
通过 Apps Script 触发器,可设置每分钟、每小时或每日刷新,但需注意免费账户的脚本执行时间限制。
是否支持多种法币报价?
支持,只需在函数中指定货币代码,如 USD、CNY、EUR 等,即可获取相应法币价格。
通过以上方法,你可以在 Google Sheets 中稳定、灵活地导入实时加密货币数据,并借助自动刷新功能持续更新信息,适用于投资跟踪、市场分析等多种场景。