我正在运行以下命令以使用 Powershell System.Net.WebClient 方法下载文件:
powershell -Command "(New-Object System.Net.WebClient).DownloadFile('https://domain.name/file.name','C:\file.name')"
有没有一种方法可以自定义用户代理并保留单行命令格式?
我问的原因是因为该网站将请求识别为来自机器人,并且我收到了 HTTP 403 禁止错误。当我使用 Internet Explorer 时,我可以毫无问题地下载该文件。我想保留单行格式,因为该命令是从 Windows 中的批处理 (.bat) 文件调用的。
此代码片段将与
webclient
一起执行自定义用户代理部分:
powershell -command {
$cli = New-Object System.Net.WebClient;
$cli.Headers['User-Agent'] = 'myUserAgentString';
$cli.DownloadFile('https://domain.name/file.name', 'C:\file.name')
}
这是为 Chrome 指定用户代理的方法
$wc = New-Object System.Net.WebClient
$wc.Headers['User-Agent'] = 'chrome';
$wc.DownloadFile($url, $output)