An automated Bing wallpaper data collection and documentation generation project that supports daily wallpaper data crawling, high-definition image downloading, and Markdown document generation for 34+ countries and regions.
- Multi-Country Support: Supports 34+ countries and regions for Bing wallpaper data
- Daily Auto-Update: Automatically runs daily at 23:01 UTC via GitHub Actions
- Data Integrity: Saves complete wallpaper metadata including titles, copyright info, descriptions, etc.
- High-Definition Wallpapers: Automatically downloads UHD ultra-high-definition wallpapers
- Smart Deduplication: Automatically detects and removes duplicate images based on MD5 hash
- Incremental Download: Only downloads new wallpapers, avoiding duplicates
- File Management: Uses MD5 values as filenames for easy management and deduplication
- Automated Documentation: Generates dedicated Markdown documents for each country
- Responsive Layout: 3-column grid layout that adapts to different screen sizes
- Multi-Time Dimensions: Supports today's wallpaper, recent 30 days, and archive browsing by year/month
- Multilingual Support: Supports interface text in multiple languages
Project Root/
โโโ .github/workflows/ # GitHub Actions workflows
โ โโโ python-app.yml # Automation task configuration
โโโ crawl/ # Crawler scripts directory
โ โโโ bing_data.py # Data crawling script
โ โโโ download_wallpapers_action.py # Wallpaper download script (Actions version)
โ โโโ download_wallpapers.py # Wallpaper download script (Local version)
โ โโโ generate_markdown.py # Markdown document generation script
โ โโโ generate_readme.py # README generation script
โ โโโ deduplicate_images.py # Image deduplication tool
โโโ jsonc/ # Wallpaper data storage
โ โโโ us/bing.jsonc # US wallpaper data
โ โโโ cn/bing.jsonc # China wallpaper data
โ โโโ ... # Other country data
โโโ images/ # Downloaded wallpaper images
โ โโโ {md5}.jpg # Image files named with MD5
โ โโโ ...
โโโ markdown/ # Generated documents
โ โโโ wallpaper-list-us.md # US wallpaper document
โ โโโ wallpaper-list-cn.md # China wallpaper document
โ โโโ ... # Other country documents
โโโ messages/ # Internationalization text
โ โโโ us.json # English interface text
โ โโโ cn.json # Chinese interface text
โ โโโ ...
โโโ templates/ # README template files
โ โโโ README_template.md # English README template
โ โโโ README_CN_template.md # Chinese README template
โโโ README.md # Project documentation (auto-generated)
โโโ README_CN.md # Chinese documentation (auto-generated)
- Function: Crawls daily wallpaper data from Bing API
- Output: Saves to
jsonc/{country}/bing.jsonc - Features:
- Supports 34+ countries and regions
- Automatic API response and error handling
- Maintains chronological order (newest first)
- Incremental updates, avoiding duplicate data
- Function: Downloads high-definition wallpaper images and manages files
- Features:
- Smart Skip: Checks
md5field in JSON, skips already downloaded items - URL Construction:
https://www.bing.com{urlbase}_UHD.jpg - MD5 Management: Calculates image MD5 value, used as filename and deduplication identifier
- Auto Deduplication: Automatically deletes duplicate files with same MD5
- Data Update: Writes MD5 value back to JSON data
- Smart Skip: Checks
- Function: Generates beautiful Markdown wallpaper documents
- Output: Saves to
markdown/wallpaper-list-{country}.md - Features:
- Today's Wallpaper: Showcases the featured wallpaper of the day
- Recent 30 Days: 3-column grid layout showing recent wallpapers
- Archive Navigation: Historical wallpaper browsing organized by year/month
- Responsive Design: Display effects adapted to different devices
- Multilingual Support: Displays interface in corresponding language based on country
- Function: Automatically generates bilingual README documents
- Input: Reads from
templates/README_template.mdandtemplates/README_CN_template.md - Output: Updates
README.mdandREADME_CN.mdin project root - Features:
- Template-Based: Uses template files to avoid overwriting base content
- Country Links: Generates links to all country wallpaper documents
- Today's Wallpaper: Embeds today's featured wallpaper (US for English, CN for Chinese)
- Bilingual Support: Generates both English and Chinese versions
- Auto-Update: Runs daily with other automation tasks
GitHub Actions automatically executes the following steps daily:
- ๐ Checkout Code - Get the latest project code
- ๐ Setup Python Environment - Configure Python runtime environment
- ๐ฆ Install Dependencies - Install necessary libraries like
requests - ๐ Crawl Data - Run
bing_data.pyto get latest wallpaper data - ๐ผ๏ธ Download Images - Run
download_wallpapers_action.pyto download new wallpapers - ๐ Generate Documents - Run
generate_markdown.pyto update Markdown documents - ๐ Generate README - Run
generate_readme.pyto update project README files - ๐พ Commit Changes - Automatically commit and push all updates
The project supports the following 34 countries and regions:
| Code | Country/Region | Code | Country/Region | Code | Country/Region |
|---|---|---|---|---|---|
ar |
๐ฆ๐ท Argentina | au |
๐ฆ๐บ Australia | br |
๐ง๐ท Brazil |
ca |
๐จ๐ฆ Canada | cn |
๐จ๐ณ China | cz |
๐จ๐ฟ Czech Republic |
de |
๐ฉ๐ช Germany | dk |
๐ฉ๐ฐ Denmark | es |
๐ช๐ธ Spain |
fi |
๐ซ๐ฎ Finland | fr |
๐ซ๐ท France | gb |
๐ฌ๐ง United Kingdom |
gr |
๐ฌ๐ท Greece | hk |
๐ญ๐ฐ Hong Kong | id |
๐ฎ๐ฉ Indonesia |
in |
๐ฎ๐ณ India | it |
๐ฎ๐น Italy | jp |
๐ฏ๐ต Japan |
kr |
๐ฐ๐ท South Korea | my |
๐ฒ๐พ Malaysia | nl |
๐ณ๐ฑ Netherlands |
no |
๐ณ๐ด Norway | pl |
๐ต๐ฑ Poland | pt |
๐ต๐น Portugal |
ru |
๐ท๐บ Russia | se |
๐ธ๐ช Sweden | sg |
๐ธ๐ฌ Singapore |
th |
๐น๐ญ Thailand | tr |
๐น๐ท Turkey | tw |
๐น๐ผ Taiwan |
ua |
๐บ๐ฆ Ukraine | us |
๐บ๐ธ United States | vn |
๐ป๐ณ Vietnam |
za |
๐ฟ๐ฆ South Africa |
- Python 3.7+
requestslibrary
pip install requests# 1. Crawl wallpaper data
python crawl/bing_data.py
# 2. Download wallpaper images
python crawl/download_wallpapers_action.py
# 3. Generate Markdown documents
python crawl/generate_markdown.py
# 4. Generate README documents
python crawl/generate_readme.py# Clean duplicate image files
python crawl/deduplicate_images.pyEach generated Markdown document includes:
- High-definition wallpaper preview
- Detailed description and copyright information
- Click to view details page link
- 3-column responsive grid layout
- Thumbnail and basic information for each wallpaper
- Formatted date display
- Month navigation grouped by year
- Current month highlighting
- Beautiful button-style design
- Automatically selects interface language based on country
- Supports English, Chinese, German, French, Japanese, etc.
- Extensible internationalization framework
Workflow configuration file: .github/workflows/python-app.yml
name: Generate Bing Wallpaper Json Auto
on:
schedule:
- cron: '1 23 * * *' # Execute daily at 23:01 UTC
workflow_dispatch: # Support manual trigger
jobs:
download_and_push:
runs-on: ubuntu-latest
steps:
- name: run bingjson
run: python crawl/bing_data.py
- name: Download wallpaper images
run: python crawl/download_wallpapers_action.py
- name: Generate markdown documents
run: python crawl/generate_markdown.py
- name: Generate README documents
run: python crawl/generate_readme.py
- name: Commit and Push
run: |
git add .
git commit -m "Update wallpaper data and markdown at $(date)"
git pushEach wallpaper data item contains the following fields:
startdate/enddate: Start and end dates of the wallpaperurl/urlbase: URL information of the wallpapercopyright: Copyright informationtitle: Wallpaper titlemd5: MD5 hash value of the image file (added after download)MediaContent: Detailed media content information
- โ
Incremental Download: Only downloads new wallpapers without
md5field - โ Auto Deduplication: Avoids duplicate images based on MD5 hash
- โ Error Handling: Graceful handling of network exceptions without interrupting the process
- โ Detailed Logging: Provides clear processing progress and result statistics
- โ Responsive Design: Adapts to desktop and mobile devices
- โ SEO Friendly: Structured titles and metadata
- โ Fast Loading: Optimized image links and layout
- โ User Experience: Intuitive navigation and browsing experience
- โ Scheduled Execution: Daily automatic updates without manual intervention
- โ Error Monitoring: GitHub Actions provides execution status monitoring
- โ Version Control: All changes have complete Git history records
- โ Scalability: Easy to add new countries and features
- Supported Countries: 34+ countries and regions
- Data Format: JSON/JSONC structured storage
- Image Quality: UHD ultra-high-definition (usually 3840x2160 or higher)
- Update Frequency: Daily automatic updates
- Document Format: Markdown, perfectly compatible with GitHub
Welcome to submit Issues and Pull Requests to improve this project!
This project is for learning and research purposes only. All wallpaper copyrights belong to Microsoft Bing and the respective photographers/copyright owners.
Last Updated: August 2025
Click the links below to view wallpaper for each country:
Where holiday magic runs on hooves
Few creatures evoke the magic of the holidays quite like the reindeer. Also known as caribou, they are the spirit animals of Christmas loversโand they rock it. Sturdy and sure-footed, they've been pulling Santa's sleigh ever since Clement Clarke Moore cast them in the role in his 1823 poem 'A Visit from Saint Nicholas.' And they were born for it. Their hooves shrink in winter to expose a gripping rim, then expand in warmer months for better traction. Still not impressed? Consider this: reindeer don't have an internal clock. Instead, their melatoninโthe hormone that regulates sleepโadjusts to light and darkness, helping them stay awake through endless nights of gift delivery.
ยฉ Roberto Moiola/Getty Images (Bing United States)
![]() |
![]() |
![]() |
| Where holiday magic runs on hooves Reindeer during winter snowfall, Lapland, Finland 2025-12-24 |
From Hoffmann's pages to global stages 'The Nutcracker' performed by the Turkish State Opera and Ballet in Ankara, Tรผrkiye 2025-12-23 |
Birth of the new sun Dawn light through frosty trees, Sweden 2025-12-22 |
![]() |
![]() |
![]() |
| Twinkle, twinkle, paper stars Christmas star lanterns, Germany 2025-12-21 |
High mountains, deep history Snow-covered landscape at Bormio, Lombardy, Italy 2025-12-20 |
Layers of time in Utah Temple of the Sun, Capitol Reef National Park, Utah 2025-12-19 |
![]() |
![]() |
![]() |
| Fur, frost, and feast Eurasian red squirrel in Northumberland, England 2025-12-18 |
Tiny hats, big spirits Handmade gnomes at a Christmas market 2025-12-17 |
Still waters, bright lights Lights on Spiegelgracht canal, Amsterdam, Netherlands 2025-12-16 |
![]() |
![]() |
![]() |
| The great holiday bird-off Tufted titmouse perched on pine boughs, Massachusetts 2025-12-15 |
Frozen reflections Merced River, Yosemite National Park, California 2025-12-14 |
The plant that paints the holidays red Spotted poinsettia 2025-12-13 |
![]() |
![]() |
![]() |
| Where the sky meets Earth Summit of Mount Everest at sunset, seen from Renjo La, Nepal 2025-12-12 |
Where cultures converge Interior of the Mosque-Cathedral of Cรณrdoba, Andalusia, Spain 2025-12-11 |
Say 'cheese'โฆ or grass Guanaco in Punta Norte, Argentina 2025-12-10 |
![]() |
![]() |
![]() |
| All is calm, all is bright Christmas lights in Domaso, Lake Como, Italy 2025-12-09 |
Remembering Pearl Harbor USS Arizona Memorial, Pearl Harbor, Honolulu, Hawaii 2025-12-08 |
Florida's living wetlands Spider webs in Everglades National Park, Florida 2025-12-07 |
![]() |
![]() |
![]() |
| The city that mapped the stars Maya site of Copรกn, Honduras 2025-12-06 |
Sprint for survival Cheetah in Maasai Mara National Reserve, Narok, Kenya 2025-12-05 |
Dawn of the cranes Sandhill cranes at sunrise, Bosque del Apache National Wildlife Refuge, New Mexico 2025-12-04 |
![]() |
![]() |
![]() |
| A view that speaks volumes Willow Lake and Mount Blackburn, Wrangell-St. Elias National Park and Preserve, Alaska 2025-12-03 |
Where ice holds its breath Natural arch carved in an iceberg, Antarctica 2025-12-02 |
Twinkle all the way Christmas market in Leipzig, Germany 2025-12-01 |
![]() |
![]() |
![]() |
| Oh deer, it's cold! Red deer stag in De Hoge Veluwe National Park, Netherlands 2025-11-30 |
Wear your heritage Collection of silver Native American concho belts, Santa Fe, New Mexico 2025-11-29 |
The echoes of Plymouth Male wild turkey plumage, Aransas Natural Wildlife Refuge, Texas 2025-11-28 |
![]() |
![]() |
![]() |
| 'Leaf' it to history Olive orchard in the Serra de Tramuntana, Mallorca, Balearic Islands, Spain 2025-11-27 |
Love, luck, and loose change The Trevi Fountain in Rome, Italy 2025-11-26 |
Secrets in stone Gwalior Fort, Madhya Pradesh, India 2025-11-25 |





























