OP 正在尝试使用 IMPORTXML 从https://poporing.life中提取数据。但是,该站点有一个公共 API,可用于更轻松地获取相同的数据。
API 已记录在案。输出是 JSON,可以通过 Google 表格轻松访问。Google 记录了访问外部 API的过程。
使用 Google 和 Poporing 文档,我构建了这段代码。
function so54549431() {
var url = 'https://api.poporing.life/' +
'get_latest_price/steel';
var response = UrlFetchApp.fetch(url, {
headers: {
"Origin": "https://poporing.life",
}
});
Logger.log("DEBUG: JSON Response: " + response); //DEBUG
// returns an Object
var dataAll = JSON.parse(response.getContentText()); //
var itemname = dataAll.data.item_name;
Logger.log("DEBUG: Item name: " + itemname);//DEBUG
var price = dataAll.data.data.price;
Logger.log("DEBUG: Price: " + price); //DEBUG
var volume = dataAll.data.data.volume;
Logger.log("DEBUG: Volume: " + volume);
}
API 返回的 JSON 为get_lastest_price
:
{
"success": true,
"data": {
"item_name": "steel",
"data": {
"price": 2358,
"volume": 1190273,
"timestamp": 1549458553,
"snapping": -1,
"change1day": 1.550387596899225,
"change3day": 11.016949152542374,
"change7day": 31.364902506963787
}
}
}