批量下载桌面壁纸使用Powershell

Posted on   努力成长静待花开  阅读(483)  评论(0编辑  收藏  举报

实现效果:

  

实现代码:

复制代码
function Download-Wallpaper
{
    Param
    (
        [Parameter(Mandatory=$true)]
        $Folder,

        [Parameter(ValueFromPipeline)]
        [int]
        $Page=1
    )

    Begin
    {
        $url="http://wallpaperswide.com/page/$Page"
        $targetExists=Test-Path -Path $Folder
        if(!$targetExists){New-Item -Path $Folder -ItemType Directory}
    }
    Process
    {
        $web=Invoke-WebRequest -Uri $url -UseBasicParsing    
        $web.Images.src|
        ForEach-Object{
            $filename=$_.split('/')[-1].Replace('t1.jpg','wallpaper-1366x768.jpg')
            $source="http://wallpaperswide.com/download/$filename"
            $TargetPath=Join-Path -Path $Folder -ChildPath $filename
            Invoke-WebRequest -Uri $source -OutFile $TargetPath
        }
    }
    End
    {
        explorer $Folder
    }
}
复制代码

 

编辑推荐:
· 10年+ .NET Coder 心语,封装的思维:从隐藏、稳定开始理解其本质意义
· .NET Core 中如何实现缓存的预热?
· 从 HTTP 原因短语缺失研究 HTTP/2 和 HTTP/3 的设计差异
· AI与.NET技术实操系列:向量存储与相似性搜索在 .NET 中的实现
· 基于Microsoft.Extensions.AI核心库实现RAG应用
阅读排行:
· 10年+ .NET Coder 心语 ── 封装的思维:从隐藏、稳定开始理解其本质意义
· 地球OL攻略 —— 某应届生求职总结
· 提示词工程——AI应用必不可少的技术
· Open-Sora 2.0 重磅开源!
· 周边上新:园子的第一款马克杯温暖上架
点击右上角即可分享
微信分享提示