喜歡必應的首頁圖片,有什麼辦法下載下來作為壁紙用?
這個網址指向最新的必應首頁圖片 http://area.sinaapp.com/bingImg/
補充:
如果你單純下載請看最上面幾個回答。
如果你想加到自己app裡面,我想你需要這個
- - - - - - -
&> JSON格式:
請求下面的網址,拿到response
http://www.bing.com/HPImageArchive.aspx?format=jsidx=0n=1mkt=en-US
{
"images": [
{
"startdate": "20161027",
"fullstartdate": "201610271600",
"enddate": "20161028",
"url": "http://s.cn.bing.net/az/hprichbg/rb/FlyingFox_ZH-CN11177580940_1920x1080.jpg",
"urlbase": "/az/hprichbg/rb/FlyingFox_ZH-CN11177580940",
"copyright": "灰頭狐蝠 (? Craig Dingle/Getty Images)",
"copyrightlink": "http://www.bing.com/search?q=%E7%81%B0%E5%A4%B4%E7%8B%90%E8%9D%A0form=hpcaptmkt=zh-cn",
"wp": true,
"hsh": "02836ffb37acd9dff7df111d1e311df6",
"drk": 1,
"top": 1,
"bot": 1,
"hs": []
}
],
"tooltips": {
"loading": "正在載入...",
"previous": "上一個圖像",
"next": "下一個圖像",
"walle": "此圖片不能下載用作壁紙。",
"walls": "下載今日美圖。僅限用作桌面壁紙。"
}
}
idx = 0是今天的, 1 是昨天, -1 是明天的...以此類推...i.e. 這就是今天的照片
"url": "http://s.cn.bing.net/az/hprichbg/rb/FlyingFox_ZH-CN11177580940_1920x1080.jpg"
Ref: Is there a way to get Bing"s photo of the day?
@Free kooker 的回答里提到了我當初寫的那個小工具,最近Bing更新了機制,那個工具已經失效了,我已修復Bug。
附上該工具的主頁:必應壁紙
如果有什麼建議或者意見,歡迎私信。
由於必應不定期改版,我也會不定期更新。不過有時工作可能比較忙,見諒。
必應每日首頁美圖;Bing Image Archive;每日必應背景圖片;菂葉兒吧_百度貼吧;同采自s.cn.bing.net的採集;Bing Homepage Gallery(國際版,個別日期的沒有);
放開這個問題,讓的資深愛好者我來,作為bing wallpaper的資深愛好者,請看下邊這個網站,Bing Homepage Gallery在這裡下載就行。
必應每日美圖去水印下載器
鏈接: http://pan.baidu.com/s/1dDWkgU1 密碼: ckaj
……請問是什麼系統?
微軟有提供了一個動態主題包,會更新bing的首頁圖片,但指不定是哪一張
我記得小眾軟體有提供過插件的說……
————【滿頭蜘蛛網】————
好了有了http://www.appinn.com/bing-downloader/ 來這裡看看 update那裡直接提供了下載並設置為壁紙的腳本
必應繽紛桌面可以自動把bing 的壁紙設成你的桌面。 到 http://bing.msn.cn 去看即可。
Bing Homepage Gallery 點擊某一張,然後右擊這張大圖(右擊如果不彈出來的話,就點它的左邊緣附近),審查元素,可以看到代碼中有鏈接,那個鏈接就是圖片了。
2016.05.16更新,示例:
上面的1366*768.jpg鏈接就是圖片了,不帶水印的。
你們各種高大上的方法,真的嚇得我都不敢回復了。
安裝並使用windows 10操作系統,然後在應用商店下載「每日必應」 這一款應用,就可以邊瀏覽邊下載圖片,並可以自動設置為桌面壁紙、鎖屏圖片。(自動下載的圖片沒有水印,解析度是:1920*1080)
知乎程序員是多哈,無非就是想下個圖,還給貼段代碼
要把大象裝冰箱,總共點三次滑鼠
登錄 微軟必應搜索 - 全球搜索,有問必應 (Bing)
第一次單擊:右下角最後那個圖標
第二次單擊:右上角的下載今日美圖
第三次單擊:保存。。。
我特意注意了下回答時間,害怕把之前的答案一棍子打死。
有句話憋好久了。感覺身邊的程序員經常把簡單的問題搞複雜。屁大點事兒,也得寫段代碼。屁大點事兒,還得下個app?
但是(總要有個但是的),這種下載來的圖片有bing的水印,喏
如果你不想要水印,Chrome瀏覽器點F12,在elements標籤里Ctrl+f 搜索 bgDiv
找到第三個bgDiv, 點擊,看下面的styles標籤
拿滑鼠滾輪點擊那個background-image下的url
大概是這樣的圖,保存就好了。
我知道,後面這幾步,懂的人不屑看的,不懂的人還會有很多弄不懂。所以我寫這個答案沒意義的。
我只是想吐槽一句
需求決定技術,而不是相反。
怒匿!
http://www.istartedsomething.com/bingimages/
必應每日高清壁紙 - 精彩,從這裡開始
Python,幾行代碼下載今日圖片~
import requests
import time
weburl = r"http://area.sinaapp.com/bingImg/"
page = requests.get(weburl)
img_name = time.strftime("%Y%m%d") + ".jpg"
with open(img_name,"wb") as f:
f.write(page.content)
print "download successful"
如果是最新首頁壁紙下載,請看 @韓冬 的回答;如果是小量首頁壁紙下載,請看 @暮池 的回答。
需要Bing首頁圖片合集的看這裡,先來張截圖:
下載地址:https://pan.baidu.com/s/1hsQPHSo , 壓縮包中包含Bing首頁過去5年共計1663張解析度為1366*768的圖片。如果需要其他解析度的圖片合集,可以自行運行python腳本(詳見後文)抓取或在評論區留言。
----------------------------------------- 分割線 -----------------------------------------
需要了解圖片抓取細節的看這裡。
由於需要抓取所有 Bing 首頁圖片的合集,所以選擇 http://www.bing.com/gallery/ 作為抓取來源。 用 Chrome 瀏覽器打開該網址,頁面布局如圖:
身為程序員,習慣性 F12 檢查下頁面元素,我發現所有圖片都在 id="gird" 的 div 塊中,頁面結構如圖:
按下 Ctrl + Shift + C 點擊列表中一張圖片,HTML 代碼如圖:
點擊圖片查看詳情,按下 Ctrl + Shift + C 點擊大圖,HTML 代碼如圖:
由此大膽猜測,圖片 url 結構為: http(s)://http://az619519.vo.msecnd.net/files/{img_name}_{resolution}.jpg
打開 Network -&> Doc 菜單,最開始 id="gird" 的 div 塊並沒有數據,說明是通過 js 請求數據並渲染出來的:
打開 Network -&> JS 菜單,果然看到我想要的數據:
數據是在 js 代碼中,可以通過正則表達式提取出來,再轉成 json 格式,數據結構如下:
{
"imageIds": ["31781", "31771", "31761", ...],
"categories": ["Nature", "Nature", "Animal", ...],
"tags": ["Beach", "Plant / tree", "Mammal", ...],
"holidays": ["", "", "Father"s Day", ...],
"regions": ["South America,", "", "", ...],
"countries": ["Peru", "", "", ...],
"colors": ["Multi", "Multi", "Brown", ...],
"shortNames": ["PlayaRoja", "AeoniumLeaf", "TurDad", ...],
"imageNames": ["PlayaRoja_EN-US9542724846", "AeoniumLeaf_EN-US7200082197", "TurDad_EN-US11284438848", ...],
"dates": [20170620, 20170619, 20170618, ...]
}
imageNames 正好對應圖片 url 中的 {img_name}。至此,就可以很輕鬆構造圖片的 url。
以第一張圖為例,根據猜測的圖片 url 構成規則,對應的圖片 url 為:
http(s)://az619519.vo.msecnd.net/files/PlayaRoja_EN-US9542724846_1366x768.jpg
打開鏈接,就是第一張解析度為 1366x768 的圖片,說明剛才猜測的圖片 url 構成規則是正確的。
Python 源代碼,bing_gallery_crawler.py
# -*- coding: utf-8 -*-
import json
import re
import requests
import shutil
data_url = "http://www.bing.com/gallery/home/browsedata?z=0"
# img_detail_base_url = "http://www.bing.com/gallery/home/imagedetails/%s?z=0"
regex = r"a.browseData=(.+);})(window, "BingGallery");"
img_base_url = "https://az619519.vo.msecnd.net/files/%s_%s.jpg"
resolution = "1366x768"
gallery_data_js = requests.get(data_url)
gallery_data_match = re.search(regex, gallery_data_js.content)
if gallery_data_match:
gallery_data_json = json.loads(gallery_data_match.group(1))
img_ids = gallery_data_json["imageIds"]
img_names = gallery_data_json["imageNames"]
short_names = gallery_data_json["shortNames"]
for index in xrange(len(img_ids)):
# img_detail_url = img_detail_base_url % img_ids[index]
img_url = img_base_url % (img_names[index], resolution)
file_name = short_names[index] + ".jpg"
img_stream = requests.get(img_url, stream=True)
if img_stream.status_code == 200:
with open(file_name, "wb") as fw:
shutil.copyfileobj(img_stream.raw, fw)
else:
print "No match!"
GitHub 源代碼地址:benheart/BingGallery , 如果覺得代碼對你有所幫助,不妨點個Star,多謝!
各種工具都用過,不好用。
現在必應還偶爾增加了視頻和聲音,和能寫代碼的人不在一個水平上,所以還是手動下載。這是16年全年的包括視頻和聲音(有時可能忽略了音頻或視頻),名字也搞好了,這個答案可以放在最好的新年禮物或者什麼禮物的問題下面,等看到再複製吧,祝新年快樂!
Bing Wallpaper Archive
這個可以切換多個國家的bing壁紙
每天盯著相同的桌面壁紙總讓人感到疲倦和乏味,何不讓桌面壁紙自動更換呢?
必應好壁紙:每一張令人心曠神怡的壁紙後面都有一個真實的故事讓你心動,讓必應壁紙帶你環球旅行吧,換一張壁紙,換一種心情!
必應好壁紙3.0(2016-10-15)將為你的桌面注入新的活力,它每天都會為你更新來自微軟必應搜索的高品質壁紙!
Windows版:必應好壁紙 官方主頁(必應壁紙)
本軟體開源,也可以運行在Linux上面:redstoneleo/BingNiceWallpapers
這個壁紙的源碼很好分析,況且必應壁紙提供了下載功能。
我寫了個小腳本自動爬取必應壁紙官方的所有高清壁紙,但是答主手殘剛開始用GitHub,很多都不熟悉,這裡給你個鏈接:zhangzhijie1998/Bing-Wallpaper-Download,裡面bing.py的文件就是那個python腳本,讓它跑起來就行。
效果如下:
這裡:世界那麼大寫真 - Askpanda,每天更新。
推薦閱讀:
※如何在不下載優酷客戶端的情況下下載優酷視頻?
※如何在Pinterest上下載高清大圖?
※為什麼迅雷下載有時候會卡在 99.9% 的進度不動?
※迅雷接下來應該怎麼走?