2016-11-20 13 views
5

Bu yüzden Komut İstemi yerine PowerShell kullanmaya karar verdim. Ve ben curl'u çalıştırmak istiyorum. Çok farklı çıktılar daha sonra curl'un PowerShell'de Invoke-WebRequest için bir takma ad olduğunu fark eder.Tüm içeriği Invoke-WebRequest ile gösterme

PowerShell curl'u gerçek curl ile aynı şekilde kullanarak, yalnızca görüntülenen içeriğin bir parçasını elde ediyorum.

PowerShell curl çıktısını bir değişkenin içine koyabildiğimi ve daha sonra tüm içeriği görüntülemek için $variable.Content kullanın, ancak bu gerçek curl üzerinde ekstra iş gibi görünüyor.

Tüm içeriğin doğrudan gösterilmesi için bir seçenek var mı? Yardımda bir tane göremiyorum.

cevap

9

Invoke-WebRequest döner: ekstra yazarak rahatsız varsa

$res=Invoke-WebRequest "https://www.google.fr/" 


#for look html of body 
$res.ParsedHtml.body.innerHTML 

#for look text of body 
$res.ParsedHtml.body.innerText 
+0

Teşekkür ederim Ansgar - orta cevap iyi. – John

0

Böyle bir şey mi var?

curl komut satırı yardımcı aksine
(iwr google.tt).content 
0

Bu da onun (iyi, en azından ben düşünebiliriz) elde etmek için en kısa yoldur İstenen belgenin içeriğinin sadece bir olduğu çeşitli özelliklere sahip bir nesne.

Invoke-WebRequest 'http://www.example.org/' | Select-Object -Expand Content 

veya böyle nokta notasyonu aracılığıyla özellik değerini alarak: Böyle özelliğini genişleterek tek bir açıklamada içeriği alabilirsiniz

(Invoke-WebRequest 'http://www.example.org/').Content 

Alternatif kullanabilirsiniz curl Windows portu:

& curl.exe 'http://www.example.org/' 

Çağrı ayırt etmek onun uzantısı ile programı Invoke-WebRequest için curl diğer adından.

İlgili konular