curl -fsSL "https://hydrological.org/api/v1/datasets/os-open-rivers/links.txt?bbox=-4.45,54.35,-2.45,56.35" \
| xargs -n 1 curl -fLO
import requests
urls = requests.get("https://hydrological.org/api/v1/datasets/os-open-rivers/links.txt?bbox=-4.45,54.35,-2.45,56.35").text.split()
for url in urls:
name = url.rsplit("/", 1)[-1]
with requests.get(url, stream=True) as r, open(name, "wb") as f:
for chunk in r.iter_content(1 << 20):
f.write(chunk)
const res = await fetch("https://hydrological.org/api/v1/datasets/os-open-rivers/links?bbox=-4.45,54.35,-2.45,56.35");
const { groups } = await res.json();
for (const g of groups) g.links.forEach(l => console.log(l.url));