PowerShell & JSON - pobieranie zagnieżdżonych danych

fivewithfour.blogspot.com 4 lat temu
Na przykładzie danych JSON z Narodowego Banku Polskiego oraz giełdy BitBay przedstawiam przykłady zapytań w skryptach PowerShell.
Dane z giełdy BitBay nie posiadające wewnętrznych struktur np: wartość średnia BTCPLN przykład prostych danych JSON pobranych z BitBay: {"max":29900,"min":28745,"last":29900,"bid":29899.01,"ask":29900,"vwap":29900,"average":29900,"volume":2537.49419038} przykładowe rozwiązanie - pobieramy cenę "average": $request_BTC = 'https://bitbay.net/API/Public/BTCPLN/ticker.json' $BTC_object = Invoke-WebRequest $request_BTC | ConvertFrom-Json | Select average [float]$BTC_average = $BTC_object.average Dane z NBP posiadają zagnieżdżone struktury, a ich zawartość można pobrać przy pomocy przykładowego zapytania (aktualna cena skupu dolara amerykańskiego w NBP) przykład zagnieżdżonych danych JSON pobranych z NBP: {"table":"C","currency":"dolar amerykański","code":"USD","rates":[{"no":"078/C/NBP/2020","effectiveDate":"2020-04-22","bid":4.1246,"ask":4.2080}]} przykładowe rozwiązanie - pobieramy cenę "bid" będącą częścią struktury "rates": $request_USD = 'https://api.nbp.pl/api/exchangerates/rates/C/USD?format=json' $USD_object = Invoke-WebRequest $request_USD | ConvertFrom-Json | Select $_.rates.bid [float]$USD_bid = $USD_object.rates.bid Choć różnica w zapytaniach jest niewielka, prawdopodobnie przyda się czytelnikom ta metoda, której odnalezieniu poświęciłem kilka godzin pracy ;-)
Idź do oryginalnego materiału