189 8069 5689

如何使用PowerShell下载必应每日图片

好久好久没写技术类的文章了,本人这几年也是大起大伏经历了不少大事。最近也终于可以静下心来写点东西。

创新互联专注为客户提供全方位的互联网综合服务,包含不限于做网站、成都做网站、宁城网络推广、小程序开发、宁城网络营销、宁城企业策划、宁城品牌公关、搜索引擎seo、人物专访、企业宣传片、企业代运营等,从售前售中售后,我们都将竭诚为您服务,您的肯定,是我们最大的嘉奖;创新互联为所有大学生创业者提供宁城建站搭建服务,24小时服务热线:028-86922220,官方网址:www.cdcxhl.com

今天想聊聊POWERSHELL对于WEB页面的一些应用,本人也是最近才发觉其实PS也是可以做爬虫的。。。所以想抛砖引玉给大家一个思路。

这次要用到的主要命令是 invoke-webrequest 


先来看看官方对于这个命令的介绍

The Invoke-WebRequest cmdlet sends HTTP, HTTPS, FTP, and FILE requests to a web page or web service. It parses the response and returns collections of forms, links, images, and other significant HTML elements.

https://docs.microsoft.com/zh-cn/powershell/module/Microsoft.PowerShell.Utility/Invoke-WebRequest?view=powershell-5.1


其实很好理解,这条PS命令可以让你模拟浏览器发送请求给网站,并且得到你要的信息。

所以今天我们就从简单的入手,用POWERSHELL下载每日必应的美图




#bing每日图片 完整代码

$picurl = "https://www.bing.com/HPImageArchive.aspx?format=js&idx=0&n=10"

$data = invoke-webrequest $picurl

$decode = convertfrom-json -inputobject $data.content

$images = $decode.images

foreach ($image in $images)

{

$imageurl = $image.url

$fullurl = "http://www.bing.com" + $imageurl

$name = $image.hsh

invoke-webrequest $fullurl -outfile ($name + ".jgp")

}


其中最关键的点是如何将乱码一样的content转换为Json, 这里要用到 convertfrom-json,由于powershell 是无法从下图中得到的网页代码读取任何有用信息所以必须要转换。

如何使用PowerShell下载必应每日图片

在成功转换之后存储在$decode里的变量变成PS易懂的格式,其中包含了该图片的URL和名称以及哪位大神的作品等等信息。再接下去就很好处理了。

如何使用PowerShell下载必应每日图片

foreach ($image in $images)

{

$imageurl = $image.url

#获取图片URL

$fullurl = "http://www.bing.com" + $imageurl

#补全URL

$name = $image.hsh

#获取图片名称

invoke-webrequest $fullurl -outfile ($name + ".jgp")

#下载到PS运行目录

}

脚本虽然简单但是给我的启发很大,让我看到了PS的无限可能。

END


网页标题:如何使用PowerShell下载必应每日图片
新闻来源:http://jkwzsj.com/article/gecehp.html

其他资讯