我有一個Google表格,其中一列有300個超鏈接。我想寫一個相鄰列的公式,它會返回同一(或引用)行上鍊接的超鏈接響應代碼(200或403/404),而不是單獨測試每個鏈接。這將如何完成?Google表格超鏈接響應代碼
-1
A
回答
1
是的,這將是可能的:
var response = UrlFetchApp.fetch(urlFromCell).getHTTPHeaders().getResponseCode();
但要注意,如果自定義函數放入每個相鄰小區中在第2列,然後他們會在每次更改表重新計算。
這會通過your quota for fetch calls快速吃掉。儘管每天通話量爲2萬次,但如果在一天內發生這種情況,會在66次更新後發生。
更好的辦法是使用單個命令來處理按鈕按下或菜單命令調用的整個列 - 這仍然是300個單獨的調用,可能會遇到6分鐘的執行時間限制,因爲它們將同步發生。
0
感謝喬納森,
我克隆你的代碼剪斷下面的函數「LinkTest()」,但我發現getHTTPHeaders沒有被預先輸入嚮導提供,每個「LinkTest2()」。然而,我有點困惑,因爲我期望「響應」能夠在所有情況下顯示響應代碼的實際值,而不僅僅是200.每當我瀏覽到一個不好的鏈接時,我會得到一個403,404或410例如。然而,這些情況下的函數只返回了「#ERROR」。進一步挖掘(here)顯示了「muteHttpExceptions」屬性。當設置爲「真」時,它會產生所需的結果。
function LinkTest(urlFromCell) { // didn't work for me...
var response = UrlFetchApp.fetch(urlFromCell).getHTTPHeaders().getResponseCode();
return response;
}
function LinkTest2(urlFromCell) { // better
var response = UrlFetchApp.fetch(urlFromCell, {"muteHttpExceptions": true}).getResponseCode()
return response;
}
返回:
相關問題
- 1. 如何將響應代碼拖入Google電子表格
- 2. Google電子表格超鏈接到特定工作表
- 3. 製作超級鏈接響應
- 4. 將Google表格鏈接到Google日曆
- 5. 跨表格單元格的超鏈接?
- 6. 創建並響應NSTableView文本單元格內的超鏈接
- 7. 重命名Google表格中超鏈接的文本標籤
- 8. 在Winform DataGridView中創建響應超鏈接鏈接
- 9. 如何通過電子表格超鏈接代碼預填充Google表單中的多個字段?
- 10. 在源代碼中放置超鏈接
- 11. MS Office超鏈接更改代碼頁?
- 12. 代碼是不是超鏈接
- 13. 從短代碼中刪除超鏈接
- 14. 從代碼後面禁用超鏈接
- 15. 根據代碼顯示超鏈接
- 16. 如何在Google表格應用程序腳本中創建超鏈接範圍?
- 17. Google GCM中的HTTP響應代碼401
- 18. Google AdWords無效的HTTP響應代碼
- 19. 用表格代替鏈接
- 20. 使用單元格內容創建超鏈接的VBA代碼
- 21. 超鏈接與單元格鏈接
- 22. 點擊超鏈接提交表格
- 23. SWT表單元格多個超鏈接
- 24. kableExtra:表格腳註中的超鏈接
- 25. VBA使用超鏈接創建表格
- 26. 使用表格行作爲超鏈接
- 27. 超鏈接後如何獲取表格?
- 28. 從超鏈接打開訪問表格
- 29. rvest獲取表格中的超鏈接
- 30. 帶有超鏈接的PHP/MySQL表格