因此想說可否設定當讀取超過多少秒時,
則判斷為錯誤,
然後跳到下一個。
後來發現 R.utils 的 evalWithTimeout ,
他可以設定當某個指令或 function 跑多少秒以上就丟出 TimeoutException。
因此當我在讀某個網站讀太久時,
就跳過他換下一個,
就不會整個卡住了。
例如我設定暫停時間為4秒,而timeout時間設定為3秒,就會丟出error:
evalWithTimeout(Sys.sleep(4), timeout = 3, onTimeout = "error")
另外如果是使用 RSelenium 來爬蟲,
其設定方法為 remDr$setTimeout(type = "page load", milliseconds = 30000) 。
其他如利用 trycatch 來特別處理TimeoutException可看:連結
沒有留言:
張貼留言