BingImage

获取必应每日一图及故事

  • 获取图片api:http://cn.bing.com/HPImageArchive.aspx?format=js&idx=0&n=1

    • idx参数:指获取图片的时间,0(指获取当天图片),1(获取昨天照片),2(获取前天的图片),最多可获取8天前的照片。
    • n参数:指获取图片的数量,n=1,指获取一张图片。
    • (也可以通过别的接口,比如:Bing 壁纸 API
  • 如何将json数据转化为对象见:c# getpost
  • 访问此url后返回的json数据如下:
{"images":[{"startdate":"20190107","fullstartdate":"201901071600","enddate":"20190108","url":"/az/hprichbg/rb/RainierDawn_ZH-CN9182470816_1920x1080.jpg","urlbase":"/az/hprichbg/rb/RainierDawn_ZH-CN9182470816","copyright":"瑞尼尔山国家公园,美国华盛顿州 (© Stephen Matera/Tandem Stills + Motion)","copyrightlink":"http://www.bing.com/search?q=%E5%9B%BD%E5%AE%B6%E5%85%AC%E5%9B%AD&form=hpcapt&mkt=zh-cn","title":"","quiz":"/search?q=Bing+homepage+quiz&filters=WQOskey:%22HPQuiz_20190107_RainierDawn%22&FORM=HPQUIZ","wp":false,"hsh":"c295f026b64b45e57248218481629f4e","drk":1,"top":1,"bot":1,"hs":[]}],"tooltips":{"loading":"正在加载...","previous":"上一个图像","next":"下一个图像","walle":"此图片不能下载用作壁纸。","walls":"下载今日美图。仅限用作桌面壁纸。"}}
  • 图片的地址即为:必应地址+image[0].url(本例为:http://cn.bing.com/az/hprichbg/rb/RainierDawn_ZH-CN9182470816_1920x1080.jpg)
  • 获取图片,并保存至本地。
    • 这里使用HttpClient类的GetByteArrayAsync方法。将图片存储为字节数组文件。
    byte[] photo=null;
    //获取图片字节串
    using(var httpClient=new HttpClient())
    {byte[] bt=await httpClient.GetByteArrayAsync(ImageUrl);photo=bt;
    }
    
    • 将字节数组存储为文件。也可参照帖子C# Stream 和 byte[] 之间的转换(文件流的应用)
    public void SaveImg(byte[] photobt)
    {//查看图片是否已经下载,path为路径if(File.Exists(path)){return;}//创造图片using(FileStream fileStream=new FileStream(path,FileMode.Create)){BinaryWriter binaryWriter=new BinaryWriter(fileStream);//写入图片信息binaryWriter.Write(photobt);}
    }
    
    • 这就是下载图片的步骤。

  • 获取故事:https://cn.bing.com/cnhp/coverstory
  • 返回的json数据:
    {"date":"January 08",
    "title":"一个国家的灵魂之地",
    "attribute":"美国,瑞尼尔山国家公园",
    "para1":"大多数人选择在温暖舒适的天气里来这儿,但冬天的凌冽和雪景会给这里带来另一种惊人的美。
    在华盛顿州的瑞尼尔山国家公园(Mount Rainier National Park),冬天是享受休闲冰雪活动的好时机。
    冬季的额外好处是,这时的国家公园没有夏季那样拥挤的人群。在大提顿山脉的雪地上,你很容易就能看
    到成群的麋鹿和其他野生动物。或者漫步在布赖斯峡谷白雪皑皑的峰顶(高耸的红色岩石尖顶),此刻的你
    可能会觉得冬天才是参观这个国家公园的最佳时间。今天的壁纸便是我们拍到的公园中透过云层的日出。",
    "para2":"",
    "provider":"© Stephen Matera/Tandem Stills + Motion",
    "imageUrl":"http://hpimges.blob.core.chinacloudapi.cn/coverstory/watermark_rainierdawn_zh-cn9182470816_1920x1080.jpg",
    "primaryImageUrl":"http://hpimges.blob.core.chinacloudapi.cn/coverstory/watermark_rainierdawn_zh-cn9182470816_1920x1080.jpg",
    "Country":"美国",
    "City":"瑞尼尔山国家公园",
    "Longitude":"-121.759415",
    "Latitude":"46.853148",
    "Continent":"北美洲",
    "CityInEnglish":"Mount Rainier National Park",
    "CountryCode":"US"
    }
    
  • 反序列化处理即可,json数据处理见:如何用API获取天气信息

  • 详细请看代码。 ?
  • 代码下载:https://github.com/xiaoxianrou8/BingImage

C#获取bing每日一图的图片及图片故事(IDE为VS Code .net core)相关推荐

  1. 【JetPack+Retrofit+Rxjava】获取Bing每日一图并显示ViewModel+LiveData+DataBinding+MVVM 补充笔记

    扉: 原文来自:Android官方架构组件ViewModel+LiveData+DataBinding架构属于自己的MVVM 很喜欢作者的思路,但是使用Kotlin需要配置的东西好多并且很多细节要重写 ...

  2. flask 自动换背景,使用python获取bing每日壁纸当作登陆背景图片

    欢迎关注原创视频教程 Python微信订餐小程序课程视频 https://edu.csdn.net/course/detail/36074 Python实战量化交易理财系统 https://edu.c ...

  3. 每天定时获取必应每日一图并保存做壁纸

    每天定时获取必应每日一图并保存做壁纸 ​ 必应每天会更新每日一图,这些图片都是特别好看,适合做封面壁纸等等.我做了一个自动脚本,让它每天定时获取每日一图,然后设置为个人主页博客的封面,封面和背景一共九 ...

  4. 在Firefox 给新标签页添加bing每日一图为背景图的方法

    Firefox 给新标签页添加bing每日一图为背景的方法 设置方法 1.地址栏打开 about:config回车,搜索toolkit.legacyUserProfileCustomizations. ...

  5. 获取bing壁纸php,php获取bing每日壁纸示例分享

    php获取bing每日壁纸示例分享 复制代码 代码如下: $str=file_get_contents('http://cn.bing.com/HPImageArchive.aspx?idx=0&am ...

  6. 获取bing壁纸php,php获取bing每日壁纸的示例

    php获取bing每日壁纸的示例 这篇文章主要介绍了使用php获取bing每日壁纸的示例,需要的朋友可以参考下 代码如下: $str=file_get_contents('http://cn.bing ...

  7. 获取Bing每日图片API接口

    bing图片每日更新,对于这一点感觉挺不错的,如果能够把bing每日图片作为博客背景是不是很不错呢?首先我们进入Bing首页,会发现自动转到中国版.不过这没关系,中国版更符合国情,速度也比国际版快一些 ...

  8. bing超高清壁纸php,如何获取 bing 每日壁纸(超高清版)

    需求描述 必应作为一个在壁纸圈做搜索引擎最优秀的站点,其每日壁纸也是可圈可点的. 那么自然就生出了如何将必应的每日壁纸保存下来,用作电脑桌面壁纸轮播的想法. 实现方式 简单粗暴 如何下载 最简单,不需 ...

  9. 动态获取Bing每日壁纸

    我们可以通过访问:http://cn.bing.com/HPImageArchive.aspx?format=xml&idx=0&n=1获得一个XML文件,里面包含了图片的地址. 上面 ...

最新文章

  1. [译] 新一代 JavaScript 的开发图谱(2017)
  2. python中的print()、str()和repr()的区别
  3. android开机优化服务,Android开机速度优化简单回顾
  4. java orm框架有哪些_Java Stream ORM现在带有JOIN
  5. [渝粤教育] 扬州工业职业技术学院 微言品语文 参考 资料
  6. iOS push新的调用方法
  7. java 二进制 文件比较_Java中对文件的读写操作之比较
  8. linux 环境变量详解,linux环境变量实例详解
  9. python自动复制,Python数组自动相互复制
  10. 还怕没女朋友吗?用python做个表白吧
  11. 计算机sense服务无法启动,workstation服务无法启动解决办法
  12. struts2拦截器添加及xss攻击的处理
  13. qq远程听到计算机声音,QQ2017远程播放视频没有声音_软件应用_电脑知识学习_培训之家...
  14. html屏蔽浏览器自动填充,禁止浏览器对表单自动填充的几种方法
  15. perl中unicode属性
  16. Network Delay Simulator模拟延时、带宽甚至丢包率,更精确地模拟慢网速环境
  17. __call__ 的用法
  18. CS信号(片选信号)经常都是低电平有效
  19. 最详细的Java程序打包成“可安装使用”的桌面应用
  20. 安装或者初始化达梦数据库卡死

热门文章

  1. 室内空气净化技术的新进展
  2. 深圳集体户口新生儿入户(福田区八卦岭派出所)办理实录
  3. 快递员的PDA都有什么功能
  4. 实践出真理:2009年各大网店系统比较分析
  5. 乐观锁与悲观琐的区别
  6. Hadoop内部的限流机制
  7. MySQL基本概念,存储引擎,数据类型
  8. 摆摊经济下小程序为何如此重要?
  9. Java利用注解实现配置动态公式并结合POI导出Excel
  10. 世界唯一用于搜索地外生命射电望远镜暂停运行