我正在使用conversocial API: https://api-docs.conversocial.com/1.1/reports/
使用文档中的示例,在所有调整之后,我收到了这个“输出”
{
"report": {
"name": "dump", "generation_start_date": "2012-05-30T17:09:40",
"url": "https://api.conversocial.com/v1.1/reports/5067",
"date_from": "2012-05-21",
"generated_by": {
"url": "https://api.conversocial.com/v1.1/moderators/11599",
"id": "11599"
},
"generated_date": "2012-05-30T17:09:41",
"channel": {
"url": "https://api.conversocial.com/v1.1/channels/387",
"id": "387"
},
"date_to": "2012-05-28",
"download": "https://s3.amazonaws.com/conversocial/reports/70c68360-1234/@twitter-from-may-21-2012-to-may-28-2012.zip",
"id": "5067"
}
}
目前,我可以将此JSON输出排序为仅下载并将接收此输出
{
"report" : {
"download" : "https://s3.amazonaws.com/conversocial/reports/70c68360-1234/@twitter-from-may-21-2012-to-may-28-2012.zip"
}
}
是否通过使用CURL自动执行此过程,以使curl下载此文件?
下载我打算用简单的方式:
curl URL_LINK > FILEPATH/EXAMPLE.ZIP
目前认为有一种方法可以用下载链接替换URL_LINK吗?或任何其他方式,方法,方式,????
答案 0 :(得分:0)
尝试一下:
requests
只需替换您的import requests
requests.get('https://www.google.com') # For example.
和jq参数,基于您的json,可能是:
curl $(curl -s https://httpbin.org/get | jq ".url" -r) > file
url
将删除双引号jq ".report.download" -r
它的工作方式是使用command substitution $()
:
-r
这将获取您的URL并使用"
从返回的JSON中提取新URL,稍后将其作为参数传递给curl。