我正在尝试抓取一个网站以使用 API 获取页面。当我发出命令时
cd desktop/mysite ; curl -O https://api.mysite.com/info?page=2
我在桌面上获取数据。然后我想循环 2 到 100 页。我无法将 json 文件放到我的桌面上。有人可以更正我的代码吗?
for ((i=1;i<=100;i++)); do
cd desktop/mysite
curl -O https://api.mysite.com/info?page=i
done
答案1
您还可以让curl 迭代一个数字范围,如下所示:
curl -O 'https://api.mysite.com/info?page=[1-100]'
答案2
您需要使用$i
而不是i
.前者被替换为 的值i
,而后者只是文本。
cd desktop/mysite # If this is invariant then it does not need to be in the loop
for ((i=1;i<=100;i++)); do
curl -O "https://api.mysite.com/info?page=$i"
done