2017-02-15 80 views
0

我遇到了我似乎無法找到解決方案的情況。我正在使用Invoke-WebRequest來抓取一個網站,當我從我的陣列中查看我的輸出時,有幾個屬性是System.Object s。我需要找到一種方法讓他們成爲字符串,這樣當我Export-Csv我實際上可以看到值。這裏是我的代碼:陣列的格式化輸出

$params = @{api_id='';api_key='';page_size='100';site_id=''} 
$stats = Invoke-WebRequest https://my.incapsula.com/api/visits/v1 -Method Post -Body $params 
$s = $stats 
$s = $s | ConvertFrom-Json 
$s = $s.visits 

下面列舉一下我的結果是這樣的:

Output from $s | FT

+1

此[通過的Boe的Prox交](https://learn-powershell.net/2014/01/24/avoiding-system-object-or-s imilar-output-when-using-export-csv /)可能很有用。注意:底部的腳本中心鏈接已損壞,腳本可以在[他的GitHub]上找到(https://github.com/proxb/PowerShell_Scripts) – BenH

+0

謝謝Ben。我已經閱讀過那篇文章。我其實想出瞭如何解決這個問題。我以前的嘗試正處於正確的軌道上。我創建了一個新對象,併爲我使用過的系統對象($ _ | select -expandproperty'propertyname')的屬性創建了一個新對象。 – T4RH33L

回答

0

我的解決方案是創建一個新的自定義對象,並使用以下語法上是一個對象的屬性本身:

($_ | select -expandproperty 'propertyname')