我的猜測是:
jq '.resultsUrl'
輸出領域resultsUrl
引號,因此捲曲不能正確地處理它。此外,$URL | ...
不起作用,您將不得不直接使用echo
或curl
。
嘗試
OK=$(curl -s https://api.apifier.com/v1/xHbBnrZ9rxF4CdKjo/crawlers/Example_Alcatraz_Cruises/execute?token=nJ9ohCHZPaJRFEb7nFqtzm76u | jq -r '.resultsUrl')
curl -s "$OK"
這
[{ "id": 2, "url": "https://www.alcatrazcruises.com/SearchEventDaySpan.aspx?date=02-25-2016&selected=", "loadedUrl": "https://www.alcatrazcruises.com/SearchEventDaySpan.aspx?date=02-25-2016&selected=", "requestedAt": "2016-02-25T23:24:52.611Z", "loadingStartedAt": "2016-02-25T23:24:54.663Z", "loadingFinishedAt": "2016-02-25T23:24:55.642Z", "loadErrorCode": null, "pageFunctionStartedAt": "2016-02-25T23:24:55.839Z", "pageFunctionFinishedAt": "2016-02-25T23:24:55.841Z", "uniqueKey": "https://www.alcatrazcruises.com/SearchEventDaySpan.aspx?date=02-25-2016&selected=", "type": "UserEnqueued", ...
結果對我來說這應該是你所期望的。
但是,有時第一API調用產生錯誤:
{
"type": "ALREADY_RUNNING",
"message": "The act is already running and concurrent execution is not allowed"
}
所以resultsURL會null
,你將不得不處理這個錯誤情況。
來源
2016-02-25 23:05:14
Ctx
變化'OK = 「$網址」 | jq'.resultsUrl''爲'OK = $(echo $ URL | jq'.resultsUrl')'。在嘗試捲曲它之前,您應該檢查OK是否爲空。 –
如何知道設置'URL'的正確語法,但不能使用相同的語法來設置'OK'? – Barmar