如何在Powershell中打开网页并向下滚动。

实际上,我正在制作一个脚本,该脚本将自己进行网络报告并提供所需的屏幕截图。我可以打开网页并使用脚本开始测试,但是我希望脚本向下滚动以便可以获取正确的屏幕截图。请帮忙。

确切地说,我希望我的脚本打开一个名为testmy.net的网站并进行网络报告。我只想截取报告的屏幕截图,然后裁剪其他所有内容。我真的很感谢您的帮助。

问)如何在PS中向下滚动网页?我打开网站并要向下滚动?

问)如何拍摄仅特定内容的屏幕截图?
(经过一番研究,我得到了一部分可以截取整个桌面的屏幕截图)

我已附上我需要的确切屏幕截图。

脚本从这里开始:

$ie = new-object -comobject InternetExplorer.Application -property `
    @{navigate2="http://testmy.net/SmarTest/combinedAuto"; visible = $true}

# Wait for the page to finish loading

$ie.fullscreen = $true

do {sleep 5} until (-not ($ie.Busy))

# Take A ScreenShot (Script taken from Stackflow)
[Reflection.Assembly]::LoadWithPartialName("System.Drawing")
function screenshot([Drawing.Rectangle]$bounds, $path) {
$bmp = New-Object Drawing.Bitmap $bounds.width, $bounds.height
$graphics = [Drawing.Graphics]::FromImage($bmp)

$graphics.CopyFromScreen($bounds.Location, [Drawing.Point]::Empty, $bounds.size)

$bmp.Save($path)

$graphics.Dispose()
$bmp.Dispose()
}

$bounds = [Drawing.Rectangle]::FromLTRB(0, 0, 1000, 900)
screenshot $bounds "C:\screenshot.png"

最佳答案

我认为您正在寻找真正又脏又快的东西。如果是这样,并且您不介意丑陋,请try using SendKeys

$ie = new-object -comobject InternetExplorer.Application -property `
    @{navigate2="http://testmy.net/SmarTest/combinedAuto"; visible = $true}

# Wait for the page to finish loading

$ie.fullscreen = $true

do {sleep 5} until (-not ($ie.Busy))

[System.Windows.Forms.Cursor]::Position = New-Object system.drawing.point(700,700)
[System.Windows.Forms.SendKeys]::SendWait({DOWN 10})

# Take A ScreenShot (Script taken from Stackflow)
[Reflection.Assembly]::LoadWithPartialName("System.Drawing")
function screenshot([Drawing.Rectangle]$bounds, $path) {
    $bmp = New-Object Drawing.Bitmap $bounds.width, $bounds.height
    $graphics = [Drawing.Graphics]::FromImage($bmp)

    $graphics.CopyFromScreen($bounds.Location, [Drawing.Point]::Empty, $bounds.size)

    $bmp.Save($path)

    $graphics.Dispose()
    $bmp.Dispose()
}

$bounds = [Drawing.Rectangle]::FromLTRB(0, 0, 1000, 900)
screenshot $bounds "C:\tmp\screenshot.png"

不断弄乱您发送的向下箭头的数量,直到正确为止-请编辑{DOWN 10}

担心您将遇到足够的计时问题,最终您又回过头来使用另一种工具。您必须服用其中几个?

请注意,我在测试时确实将URL更改为espn.com。不确定您的情况-速度测试?似乎要加载大约三个不同的页面。

关于javascript - Powershell向下滚动网页/Powershell屏幕截图,我们在Stack Overflow上找到一个类似的问题:https://stackoverflow.com/questions/26535311/

10-12 15:30