php 获取Bing首页壁纸并保存至本地

 1 <?php
 2
 3 define(‘WALLPAPER_PATH‘,‘C:/xxx/xxx‘); //本地目录
 4
 5 class BingPicture{
 6
 7     private $content = "";
 8     private $imgurl = "";
 9
10     public function __construct() {
11         $this->_getWallpaperUrl();
12     }
13
14     //获取壁纸
15     public function _getWallpaperUrl(){
16         if (!function_exists(‘file_get_contents‘))
17             return false;
18
19         $this->content=file_get_contents(‘https://cn.bing.com/HPImageArchive.aspx?idx=0&n=1‘);
20
21         if (preg_match("/<url>(.+?)<\/url>/ies", $this->content, $matches)) {
22             $this->imgurl=‘https://cn.bing.com‘.$matches[1];
23         }
24     }
25
26     //获取壁纸信息
27     public function getWallpaperInfo(){
28         if (preg_match("/<copyright>(.+?)<\/copyright>/ies", $this->content, $matches)) {
29             $imgcopyright=$matches[1];
30         }
31
32         if($imgcopyright){
33             return $imgcopyright;
34         }
35     }
36
37     //保存壁纸
38     public function saveWallpaper() {
39
40         if(!file_exists(WALLPAPER_PATH)){
41             mkdir(WALLPAPER_PATH, 0777);
42         }
43
44         $url = $this->imgurl;
45         $pic = ‘Bing‘.date("Ymd").‘.jpg‘;
46         $file = WALLPAPER_PATH.‘/‘.$pic;
47
48     if ($url == "")
49         return false;
50
51         if(file_exists($file))
52                 return true;
53
54     ob_start ();
55     readfile ( $url );
56     $img = ob_get_contents ();
57     ob_end_clean ();
58     $size = strlen ( $img );
59
60         $fp2 = @fopen ( WALLPAPER_PATH . DIRECTORY_SEPARATOR . $pic, "a" );
61         fwrite ( $fp2, $img );
62         fclose ( $fp2 );
63     }
64
65 }

以及创建任务计划定时执行脚本

 1 @echo off
 2
 3 rem 定时获取并保存Bing壁纸脚本
 4
 5 cd /d F:
 6
 7 rem php.exe所在目录
 8 set PHP_PATH=F:\xxx
 9
10 rem 脚本所在目录
11 start %PHP_PATH% -q F:\xxxx\xxx.php
12
13 exit

原文地址:https://www.cnblogs.com/eliza209/p/12532050.html

时间: 2024-10-07 08:24:28

php 获取Bing首页壁纸并保存至本地的相关文章

如何获取 bing 每日壁纸(超高清版)

目录 需求描述 实现方式 简单粗暴 如何下载 如何更高清 排坑指南 初级 优点 给有好奇心的孩子 进阶 接口 自动保存 网站集成 爬虫 需求描述 必应作为一个在壁纸圈做搜索引擎最优秀的站点,其每日壁纸也是可圈可点的. 那么自然就生出了如何将必应的每日壁纸保存下来,用作电脑桌面壁纸轮播的想法. 实现方式 简单粗暴 如何下载 最简单,不需要任何编程的办法,就是右键查看背景图像,然后另存到本地. 箭头指向的这个链接,就是我们要找的图片地址,点击打开的就是高清图片,而且像素值是 2880*1620,非常

Android 获取截图 并将其保存到本地sd在卡路径

/** * 获取当前屏幕和保存截图 */ private void GetandSaveCurrentImage() { //1.构建Bitmap WindowManager windowManager = getWindowManager(); Display display = windowManager.getDefaultDisplay(); int w = display.getWidth(); int h = display.getHeight(); Bitmap Bmp = Bit

如何获取网页验证码图片并保存到本地(Java实现) [问题点数:40分,结帖人lanxuezaipiao]

http://bbs.csdn.net/topics/390426978 public static String readCheckImage(HashMap<String, String> requestMap) {        String url = requestMap.get("url");        if (requestMap.get("params") != null) {            url += "?&qu

Bing获取-获取Bing每日图片

去年12月份写了一个Bing缤纷壁纸,功能是获取Bing首页的图片并且保存到本地电脑上. 其实那个程序存在的巨大的BUG,获取源码的问题导致只能获取某个日期的图片. 今天在Bing首页中研究出一种新的获取源码的方式: 1.这是我们将要使用网址: http://cn.bing.com/HPImageArchive.aspx?idx=0&n=1 2.获取网页源码 3.提取<url> /az/hprichbg/rb/ShastaStars_ZH-CN8155999354_1366x768.j

pyhton 从web获取json数据 保存到本地然后再读取

从web中获取json数据直接进行处理总认为太慢.主要是从web中获取获取数据的过程有点慢. 所以就在想 假设先利用空暇时间把json数据获取并保存到本地,然后再从本地文件里读取和操作.应该就要快非常多. 这中间的主要问题就是格式的转换问题:1.将获取取的json数据序列化后保存到本地文件里:2.从文件里逐行读取数据,再将其反序列化为json格式. 详细的一个演示样例程序例如以下: [为保护个人信息,程序中的一些代码不完整] from urllib.request import urlopen;

获取bing图片并自动设置为电脑桌面背景(使用 URLDownloadToFile API函数)

众所周知,bing搜索网站首页每日会更新一张图片,张张漂亮(额,也有一些不合我口味的),特别适合用来做电脑壁纸. 我们想要将bing网站背景图片设置为电脑桌面背景的通常做法是: 上网,搜索bing 找到图片的下载链接,并下载之 将图片设置为桌面背景(也有部分浏览器支持直接在网页中右击图片设置为壁纸) 可能你还会删除下载下来的图片 作为一枚coder,你不会觉得麻烦嘛?至少需要三个步骤呢! So...我就用C++语言写了一个小程序,用于获取bing网站的图片,并将其设置为桌面背景.整个过程只需要点

[深入浅出Windows 10]应用实战:Bing在线壁纸

本章介绍一个使用Bing搜索引擎背景图接口实现的一个应用——Bing在线壁纸,讲解如何使用网络的接口来实现一个壁纸下载,壁纸列表展示和网络请求封装的内容.通过该例子我们可以学习到如何使用网络编程的知识和开放的接口来实现一些有趣的应用程序,如何在项目中封装相关的功能模块,从而进一步地了解Windows 10应用程序开发的过程. 23.1 应用实现的功能 微软的Bing搜索引擎每天都会挑选出一张图片作为今天的主题,并且会对图片的含义或者图片所代表的意思进行一番解说,每天的图片和故事都不一样,并且有时

Java与Python下载Bing首页图片

Java与Python下载Bing首页图片 一,首先是Java代码 import org.apache.http.HttpEntity; import org.apache.http.client.methods.CloseableHttpResponse; import org.apache.http.client.methods.HttpGet; import org.apache.http.impl.client.CloseableHttpClient; import org.apache

Bing缤纷壁纸

微软Bing必应搜索网站有一个很棒的特色,每天都会换一张精美的背景图片. 对懒人来说,如果自己电脑的桌面也能这样每天自动更换壁纸那该多好啊. 那么,Bing缤纷壁纸来了. 软件的界面很简单,自动下载的的壁纸来自必应中国,所以中国新年也会有一些特色的图片. 第一个版本使用Windows Design,看起来丑丑的. 第二个版本使用Material Design风格,别具特色. 不多说,上截图. 第一版: 第二版:      下载地址:Bing缤纷壁纸 点击 获取缤纷壁纸 ,将在C:\BingWal