我在 Google 表格中的功能有問題。我每天都收到這個錯誤:“例外:服務在一天內呼叫了太多次:urlfetch。” 我在檔案中有大約 1000 個 url。我在谷歌尋找解決方案。我找到了一些建議將快取添加到功能的主題,但我不知道該怎么做。有人有什么想法嗎?我的功能:
function ImportCeny(url, HTMLClass) {
var output = '';
var fetchedUrl = UrlFetchApp.fetch(url, {muteHttpExceptions: true});
if (fetchedUrl) {
var html = fetchedUrl.getContentText();
}
// Grace period to avoid call limit
Utilities.sleep(1000);
var priceposition = html.search(HTMLClass);
return html.slice(priceposition,priceposition 70).match(/(-\d |\d )(,\d )*(\.\d )*/g);
}
uj5u.com熱心網友回復:
您可以嘗試添加一個隨機生成的數字,例如 6 位數字,并在每次呼叫“ UrlFetchApp ”之前將此數字作為引數添加到 URL 中
IE;
url = url & "?t=458796"
uj5u.com熱心網友回復:
您當然可以使用Utilities.sleep()強制程式在進行下一次呼叫之前停止一段時間。但是,使用內置 Cache 類(您可以在此處查看檔案)更合適,因為它是專為這些場景設計的。所以,如果你想留下一秒鐘,你可以替換:
Utilities.sleep(1000); //In milliseconds
和
var cache = CacheService.getScriptCache(); //Create a cache instance
cache.put("my_content", html, 1); // In seconds
轉載請註明出處,本文鏈接:https://www.uj5u.com/yidong/397967.html
上一篇:當谷歌作業表中一次單元格的值發生變化時,我試圖設定多個單元格的值
下一篇:從網站匯入大表并始終抓取第一行
