【发布时间】:2016-05-19 06:35:02
【问题描述】:
我想在 Powershell 的帮助下拍摄整个网页的快照。我有一个代码可以为我提供当前活动系统窗口的屏幕截图,但我的 powershell 目前在另一个 Internet Explorer 实例的后台打开网页。有没有办法用powershell截取网页截图。
【问题讨论】:
标签: powershell screenshot
我想在 Powershell 的帮助下拍摄整个网页的快照。我有一个代码可以为我提供当前活动系统窗口的屏幕截图,但我的 powershell 目前在另一个 Internet Explorer 实例的后台打开网页。有没有办法用powershell截取网页截图。
【问题讨论】:
标签: powershell screenshot
A PowerShell tool for taking screenshots of multiple web servers quickly.
PowerWebShot
用于快速截取多个 Web 服务器的 PowerShell 工具。
要求
这个工具利用 Selenium 和 PhantomJS 来截取 Web 服务器。我已经在这个存储库中包含了 phantomjs.exe 和 Selenium WebDriver.dll,但是如果您想直接从它们的源中下载它们,可以在这里找到它们:
phantomjs.exe 和 WebDriver.dll 必须在 PowerWebShot.ps1 脚本的当前工作目录中。
用法
PowerWebShot 可用于使用 -URL 选项截取单个 URL,或使用 -UrlList 选项截取来自文件的 URL 列表。每个 Web 服务器都会生成一个缩略图,并将其添加到输出目录中 report.html 处的 HTML 报告中。
首先,运行 powershell.exe 并使用以下命令导入脚本:
C:\PS> Import-Module PowerWebShot.ps1
单个 URL 的屏幕截图
此命令将截取http://www.google.com 的屏幕截图并将其添加到一个名为report.html 的文件中,该文件位于自动生成的目录中,文件夹标题为当前日期/时间。
C:\PS> Invoke-PowerWebShot -URL http://www.google.com
截取 URL 列表并输出到自定义目录
此命令将截取文件“urllist.txt”中的每个 URL,并将它们添加到名为 report.html 的文件中。每个屏幕截图和报告都将位于一个名为“web-server-screenshot-directory”的目录中。
C:\PS> Invoke-PowerWebShot -UrlList urllist.txt -OutputDir web-server-screenshot-directory
【讨论】: