zoukankan      html  css  js  c++  java
  • PHP使用正则下载Windows 8主题背景

    Windows 8出来了,官方网站上提供了很多的壁纸供人们下载。本代码的目的是使用PHP的正则表达式一次将所有的壁纸都下载下来。

    <?php
    // 下载网址
    $html = file_get_contents('http://windows.microsoft.com/zh-CN/windows/wallpaper?T1=all');
    
    // 壁纸图片都应该放在这样的标签内.
    $pattern = '/<div class="prodPaneImage"><a href=".*"><img class="blkImg"/';
    $n = preg_match_all($pattern, $html, $matches, PREG_SET_ORDER);
    
    for ($i = 0; $i < $n; $i++) {
        preg_match_all('/http:.+\.jpg/', $matches[$i][0], $url, PREG_SET_ORDER);
        echo sprintf('Downloading (%d/%d) %s ... ', $i + 1, $n, $url[0][0]);
    
        $url = $url[0][0];
        $url = str_replace(' ', '%20', $url); // 替换空格
        $contents = file_get_contents($url);
        file_put_contents('images/' . basename($url), $contents); // 壁纸下载后存放的路径
    
        echo ' OK!' . PHP_EOL;
    }

    执行过程:

    下载后的结果(截至到现在共有336张):

  • 相关阅读:
    存储过程
    .Net经典面试题
    《锋利的Jquery》
    WPF-1
    ios-5-类别和协议
    ios-4-创建单例模式
    ios-3-简单内存管理
    ios-2
    ios -1
    <<ASP.NET MVC4 Web编程>>笔记
  • 原文地址:https://www.cnblogs.com/eastson/p/2790151.html
Copyright © 2011-2022 走看看