如何使用PowerShell从任何网页上提取链接

PowerShell 3有很多新功能,包括一些强大的与网络相关的新功能。它们极大地简化了网络的自动化,今天我们将向你展示如何从网页上提取每一个链接,如果你愿意,还可以选择下载资源。

用PowerShell刮网页

有两个新的cmdlet可以使Web自动化变得更容易,Invoke-WebRequest使解析人类可读内容变得更容易,而Invoke-RestMethod使机器可读内容更容易阅读。因为链接是页面HTML的一部分,所以它们也是人类可读内容的一部分。要获取网页,您只需使用Invoke-WebRequest并给它一个URL。

如果向下滚动,您将看到响应具有链接属性,我们可以使用PowerShell3的新成员枚举功能将其过滤掉。

正如你所看到的,你会得到很多链接,这就是你需要发挥你的想象力来找到一些独特的东西来过滤掉你正在寻找的链接的地方。假设我们想要一份头版所有文章的列表。

使用新的cmdlet可以做的另一件大事是自动执行日常下载。让我们看看自动从NAT Geo网站上抓取当天的图像,为此,我们将结合使用新的Web cmdlet和Start-BitsTransfer。

非那样做不行。你自己有什么绝妙的把戏吗?在评论中让我们知道。

相关文章