We use (and often contribute to) several common integrated hydrologic and reactive transport codes. We also develop several Python packages.
Weather Undergound stores data from over 250,000 personal weather stations across the world. Unfortunately, historical data are not easy to access. It’s possible to view tables of 5-min data from a single day – see this example from a station outside Crested Butte, Colorado – but if you try to scrape the http using something like Python’s requests
library, the tables appear blank.