我想制作一个脚本来从受用户名和密码保护的网站上下载文件,但是由于该网站首先要求提供用户名和密码,所以我很困惑,不知道该怎么做。
$iIp = Read-Host -Prompt 'eneter your ip'
foreach($line in Get-Content .\urls.txt) {
if($line -match $regex){
$url = "$Ip/$line"
if (!(Test-Path .\descargados)){
mkdir .\downloads | Out-Null
}
$path = ".\downloads\$line"
if(!(Split-Path -parent $path) -or !(Test-Path -pathType Container (Split-Path -parent $path))) {
$path = Join-Path $pwd (Split-Path -leaf $path)
}
"downloading and saving [$line]"
$client = new-object System.Net.WebClient
$client.DownloadFile($url, $path)
$path
}
}
答案 0 :(得分:0)
我将介绍Invoke-WebRequest,因为它可以让您使用凭证或通过POST填写表格。 examples展示了几种用例。您可能需要使用-AllowUnencryptedAuthentication,因为您似乎没有任何ssl。
$credential = Get-Credential
Invoke-WebRequest -Uri $url `
-AllowUnencryptedAuthentication `
-Credential $credential `
-OutFile $path