如何抓取设备及其所有者的 Meraki 客户端页面?

如何抓取设备及其所有者的 Meraki 客户端页面?

我正在尝试自动化每周的流程,从 Meraki 网站上的客户端页面下载 CSV 副本。

在我失去你之前我意识到有一个 API并且运行良好。但是,有一个设备属性未在 API 中公开。我从他们的支持人员那里得到了以下信息:

目前,“所有者”字段无法通过 API 访问,并且目前正在开发中。

我需要所有者,因为这是我将设备与组织中的人员关联起来的方式。

使用 PowerShell,我能够成功登录网站并获得基本页面的 200 响应。我的问题在于,当我尝试使用同一会话获取我想要的数据时,我总是得到一个只有面包屑而没有实际数据的页面。

# Browse the Meraki website
$response = Invoke-WebRequest -Uri "https://n116.meraki.com/login/dashboard_login" -SessionVariable meraki

# Form Credentials
$formFields = @{
    email = "my address"
    password = "my password"
}

# Authenticate to the site
Invoke-WebRequest -Uri $response.Forms.Action -WebSession $meraki -Body $formFields -Method Post
# Get the client list
Invoke-WebRequest -Uri "https://n116.meraki.com/my-company/n/_-tSGb0b/manage/pcc/list" -WebSession $meraki -Method Get

最糟糕的情况是,我希望获得parsedHtml客户列表表,以便处理其内容。无论在哪个页面,我似乎都无法获得任何有用的数据。我不确定问题是 Meraki 还是我的 PowerShell 方法。到目前为止,我只做了简单的抓取。

我意识到这是一个非常具体的请求,但我很好奇想知道是否有人拥有 Meraki 能够或已经能够使用这些方法获取这些信息。

相关内容