从 html 页 Powershell 抓取和显示数据

Grabbing and Displaying data from html page Powershell

你好我正在制作一个简单的命令行工具,它将帮助我通过 SSH/Powershell 从我的游戏服务器进行通信/获取数据。我试图从 192.95.23.181:11775 获取一些数据(显示玩家数量、地图名称、变量、端口等)

如何获取特定数据并使用 powershell 显示它。 例如

`$server = Invoke-WebRequest -URI 192.95.23.181:11775

PS C:\Users\Administrator> $server.Content

{"name":"#2 [US-EAST] Dedicated Community Infection Server","port":11774,"hostPlayer":"HaloInfect.Net","isDedicated":tr
ue,"sprintEnabled":"1","sprintUnlimitedEnabled":"0","assassinationEnabled":"1","VoIP":true,"teams":false,"map":"Green J
ourney","mapFile":"riverworld","variant":"Toxic Fatkid","variantType":"infection","status":"InGame","numPlayers":2,"max
Players":16,"xnkid":"5314a305e810484089d439e5089d24fe","xnaddr":"c53527ae684116459bdab2a2154fa4e6","players":[{"name":"
1321","score":0,"kills":0,"assists":0,"deaths":0,"team":0,"isAlive":true,"uid":"83217235a7e315bb"},{"name":"Max","score
":0,"kills":0,"assists":0,"deaths":0,"team":1,"isAlive":false,"uid":"f523149f39fc331e"}],"gameVersion":"1.106708_cert_m
s23___release","eldewritoVersion":"0.5.1.1"}
PS C:\Users\Administrator>`

假设我想在 "numplayer: or the map name after "map" 之后获取数字,我该如何编写一个脚本来搜索和显示这些数据。

希望说得通,在此先感谢

$data=convertfrom-json $server.content
$data.numPlayers

应该做的。

ConvertFrom-Json 从您的响应中创建一个普通的 Powershell 对象,因为它实际上是一个 JSON 响应。然后您可以直接查询其字段。如果您需要发送 JSON 请求,您应该创建一个具有所需结构的对象,然后调用 ConvertTo-Json 以获取要发送的字符串。