我在网页http://www.solar-cybro.com/p/alpod-plant/540/上有一个网页,上面有我们的太阳动力装置的数据。
我正在尝试每小时向Powershell输出一次电力值,如果powerplant在白天不输出电力,我会给我发电子邮件。
我尝试使用Invoke-WebRequest和ParsedHtml.body.getElementsByTagName,但没有成功。我就是打不出电话号码。
想法?
发布于 2021-07-07 23:26:56
对于powershell v5,我认为最好的选择是请求历史时间图数据(基本上只需点击其中一个图形上的下载链接):
$DataNames = 'c11356.plant_dc_power','c11356.plant_ac_power' -join '+'
$UnitType = 'day'
$Units = 1
$StartDate = '2021:7:7:15'
$RequestID = [long]([double](Get-Date (Get-Date).ToUniversalTime() -UFormat %s)*1000)
$TimeplotURL = "http://www.solar-cybro.com/service/download_timeplot_data/t=$DataNames,p=$UnitType,s=$StartDate,sc=$Units,cum=0,res=24,dec=1,page=540/?rand=$RequestID"
# Get Data
$csv = Invoke-WebRequest -Uri $TimeplotURL -ContentType text/csv |
ConvertFrom-Csv -Delimiter ';'
# Optionally save to file
$csv | Export-Csv C:\temp\test.csv
# Display data
$csv它很好地输出了数据:
date time c11356.plant_dc_power c11356.plant_ac_power
---- ---- --------------------- ---------------------
2021-07-07 08:00:01 906 887
2021-07-07 08:10:01 1002 983
2021-07-07 08:20:01 1084 1062 您必须找到所需数据的特定名称/ it,但这应该非常简单。
https://stackoverflow.com/questions/68285833
复制相似问题