我正在尝试查询Google电子表格中的数据,任何人都可以使用只读链接阅读。
我实施了this快速入门解决方案,但这就是我需要的:
我尝试构建如下的查询:
http://spreadsheets.google.com/tq?tq=SELECT%20*%20WHERE%20A=C298732300456446&key=2aEqgR1CDJF5Luib-uTL0yKLuDjcTm0pOIZeCf9Sr0wAL0yK
但我得到的只是:
/*O_o*/
google.visualization.Query.setResponse(
{
"version": "0.6",
"reqId": "0",
"status": "error",
"errors": [
{
"reason": "invalid_query",
"message": "INVALID_QUERY",
"detailed_message": "Invalid query: NO_COLUMN: C298732300456446"
}
]
}
当数据实际出现在A列的工作表中且值为C298732300456446
时,就会出现这种情况。
如果没有我的电子表格中的任何身份验证,我该怎么做才能获取数据?
答案 0 :(得分:1)
我不确定是否可以这样做。如果没问题,我可以提出另一种解决方案。您可以尝试编写如下的Google App脚本:
function doGet(e) { return getInfo(e); }
function doPost(e) { return getInfo(e); }
function getInfo(request) {
var someValueFromUrl = request.parameter.value;
var requiredValue = "";
var sheet = SpreadsheetApp.openById("spreadsheet_id");
var data = sheet.getDataRange().getValues();
for (var i = 0; i < data.length; i++) {
Logger.log("Reading row num: " + i);
if(data[i][0] == someValueFromUrl) {
requiredValue = data[i][1];
break;
}
}
Logger.log(requiredValue);
return ContentService.createTextOutput(JSON.stringify(requiredValue));
}
这样,您可以将此脚本发布为Web应用程序,并使用在发布此脚本时获取的URL来调用它。
调用脚本如:
https://script.google.com/macros/s/obtained_url/exec?value=1234
如果找到密钥,您将获得字符串响应:
"value"
我希望这会有所帮助。
答案 1 :(得分:1)
C298732300456446必须放在单引号内。
因此您需要将 <div class="hAyfc">
<div class="BgcNfc">Installs</div>
<span class="htlgb">
<div><span class="htlgb">5,000+</span></div>
</span>
</div>
括为C298732300456446
您修改后的查询为
%27C298732300456446%27
不过,我无法对此进行测试-好像您已从此电子表格中删除/删除了访问权限。