- Auto fetch and download cloud maps from NSMC and etc...
- Can be easily extended to other meteorological service sites
- Convert downloaded satellite images into a video (MP4) for playback or presentation
git clone https://github.com/Jaciezyt/cloud-map-spider.git
cd cloud-map-spider
uv venv
source ./venv/bin/activate # change on windows
uv pip install -r requirements.txt
python main.pyThe downloader uses one shared HTTP session, browser-like headers, randomized
request spacing, retries, and longer cooldowns for 418/429 responses. These
defaults are intentionally conservative. You can tune them with environment
variables:
CMS_REQUEST_DELAY_MIN_SECONDS=6 \
CMS_REQUEST_DELAY_MAX_SECONDS=15 \
CMS_418_COOLDOWN_SECONDS=180 \
CMS_REQUEST_RETRIES=5 \
python main.pyUseful options:
CMS_USER_AGENT: override the default browser-like User-AgentCMS_REQUEST_DELAY_MIN_SECONDS/CMS_REQUEST_DELAY_MAX_SECONDS: random delay between queued requestsCMS_REQUEST_RETRIES: retry count before surfacing an HTTP/network errorCMS_418_COOLDOWN_SECONDS/CMS_429_COOLDOWN_SECONDS: host cooldown after anti-bot/rate-limit responsesCMS_CONNECT_TIMEOUT_SECONDS/CMS_READ_TIMEOUT_SECONDS: request timeouts
python videomaker.pypoll: polling threads will be created for all targetsget_manifest: get manifest fromtarget.urlparse_parset: parse manifest content to image url listget_image: get image data; if failed, mark{url}withfailedsave_temp: save image to temp directory, marking{url}withdownloadeddo_exports: do exports as the user definition- If
exporterreturnsFalse, mark{url}.{export}withfailed; Otherwise, mark{url}.{export}withsuccess - If ALL exporters are marked with
success, mark{url}withsuccess
- If
clean: if{url}is marked withsuccess, delete the image from temp directory
This project is intended solely for meteorological research purposes.
It is not affiliated with NSMC or any other organization.
The contributors are not responsible for any misuse or abuse of this software.
Please use this tool legally and responsibly.