我想保存一个网页(ASP),就像IE将其保存为文本文件一样。
我找到了this并尝试了:
$ie=New-Object -ComObject InternetExplorer.Application
$ie.Navigate($Page)
$ie.Document.execCommand("SaveAs", $false, "1.txt")
但是我收到了错误:
You cannot call a method on a null-valued expression.
At line:3 char:1
+ $ie.Document.execCommand("SaveAs", $false, "1.txt")
+ ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
+ CategoryInfo : InvalidOperation: (:) [], RuntimeException
+ FullyQualifiedErrorId : InvokeMethodOnNull
我不确定我做错了什么。
如果我尝试通过
捕获页面$web = New-Object Net.WebClient
$web | Get-Member
$web.DownloadString($Page) | Out-File "test.html"
我得到一个页面,但是这是一个网站创建的错误页面,让我知道链接无效,因此只有在我通过IE会话加载页面时它才真正找到该页面。
我真的只需要将IE页面自动捕获为文本文件,我希望不使用SendKey
函数来实现。有人可以帮忙吗?
答案 0 :(得分:0)
尝试Invoke-WebRequest:
Invoke-WebRequest -Uri "http://www.powershell.org" -OutFile "powershell.txt"