powershell – 下載url內容
我正在一個指令碼工作,我可以瀏覽網頁內容或“網址”,但我無法複製網頁內容,下載為檔案.
這是我迄今為止所做的:
$url = "http://sp-fin/sites/arindam-sites/_layouts/xlviewer.aspx?listguid={05DA1D91-F934-4419-8AEF-B297DB81A31D}&itemid=4&DefaultItemOpen=1" $ie=new-object -com internetexplorer.application $ie.visible=$true $ie.navigate($url) while($ie.busy) {start-sleep 1}
如何複製$url的內容並將其作為檔案儲存到本地驅動器?
更新:
我得到這些錯誤:
Exception calling “DownloadFile” with “2” argument(s): “The remote server returned an error: (401) Unauthorized.” At :line:6 char:47 + (New-Object system.net.webclient).DownloadFile( <<<< “$url/download-url-content”, ‘save.html’ ) Missing ‘)’ in method call. At :line:6 char:68 + (New-Object system.net.webclient).DownloadFile( “$url”, ‘save.html’ <<<< Exception calling “DownloadFile” with “2” argument(s): “The remote server returned an error: (401) Unauthorized.” At :line:6 char:47 + (New-Object system.net.webclient).DownloadFile( <<<< “$url”, ‘save.html’ )
好的,讓我來解釋一下我正在努力做的事情:我在我們的分享點網站上有一個excel檔案這是我正在本地下載的檔案(任何格式),這是指令碼的一部分,因此對於指令碼的後面部分,我可以將此檔案與其他資料&得到一個輸出.
現在,如果我能以某種方式從網站&能夠下載檔案,這也將適用於我.
據我瞭解,您嘗試使用IE,因為如果自動傳送您的憑據(或者也許您不知道任何其他選項).
為什麼上述答案不起作用是因為您嘗試從SharePoint下載檔案,併發送未經身份驗證的請求.答覆是401.
這樣做:
PS>$wc=new-object system.net.webclient PS>$wc.UseDefaultCredentials = $true PS>$wc.downloadfile("your_url","your_file")
如果Posh的當前使用者有權下載檔案(與IE中記錄的一樣).
如果沒有,請嘗試:
PS>$wc=new-object system.net.webclient PS>$wc.Credentials = Get-Credential PS>$wc.downloadfile("your_url","your_file")
程式碼日誌版權宣告:
翻譯自:http://stackoverflow.com/questions/1973880/download-url-content