1

我正在尝试从具有遵循特定模式的 URL 的网站中删除数据。具体来说,它们是这样的:

http://msn.com/21-05-2013/data
http://msn.com/22-05-2013/data

现在,您可以看到 URL 中唯一发生变化的是日期。是否有一个 curl 命令可以告诉我我的日期范围,它会为我检索数据?

我查看了官方文档和 Stackoverflow,但没有发现任何直接相关的内容。

4

2 回答 2

1

您可以使用 bash 的数字扩展来获取所有相关的 url。

例如:

 http://msn.com/{01..31}-{01..12}-2013/data

将扩展到 2013 年的所有日期(有一些无效日期,如 31-02)

和 ofc 以获得更清晰的界限:

http://msn.com/{15..28}-02-2013/data http://msn.com/{1..14}-03-2013/data
于 2013-09-18T19:54:33.470 回答
0

您可能需要 bash 中的 for 循环,而不是 curl 中的某些内容。这样的事情会在 2013 年 5 月的所有日子里迭代:

for day in $(seq 1 1 31); do
    url=$(printf "http://msn.com/%02d-05-2013/data" $day)
    curl $url
done
于 2013-09-18T18:05:15.807 回答