웹 인터페이스를 사용하는 Honeywell WIFI 온도 조절기의 온도를 변경하기 위해 기본 VBScript를 만들었습니다. 사이트에 접속하여 로그인하고 임시를 변경하고 변경 사항을 제출할 수 있습니다. 이제 온도 조절기가 설정된 온도를 검색하고 싶습니다. IE의 소스 문서에서 정보를 찾을 수있는 위치를 알고 있지만 호출하는 방법을 모릅니다. 여기 내가 필요한 것을 포함하는 HTML 요소가 있습니다.
<div id="NonAutoHeatSetpt" style="">
<div class="SetPtContainer">
<div class="CurrSetptHdr">Set To</div>
<div class="CurrentSetpt"><div class="DisplayValue">22.0</div><span class="NoBold">°</span></div>
</div>
<div class="SetPtButtons" style="">
<div id="NonAutoModeHeatUpBtn" class="UpBtn unselectable"> </div>
<div id="NonAutoModeHeatDownBtn" class="DownBtn unselectable"> </div>
</div>
</div>
22.0을 검색해야합니다. 그러면 목표 온도 (내 스크립트에서 결정됨)에 도달 할 때까지 온도를 계속 낮추는 루프를 만들 수 있습니다.
지금까지 가지고있는 코드는 다음과 같습니다.
Sub WaitForLoad 'Sub to wait for browser to load
Do While IE.Busy
WScript.Sleep 10
Loop
End Sub
On Error Resume Next
Dim IE
Dim SetTo1
Dim SetTo2
Set IE = CreateObject("InternetExplorer.Application")
IE.Visible = True
IE.navigate "https://mytotalconnectcomfort.com/portal/"
WaitForLoad
IE.Document.All.Item("UserName").Value = "[email protected]"
IE.Document.All.Item("Password").Value = "MyPassword"
IE.Document.All.Item("submit").Click
WaitForLoad
IE.Document.All.Item("NonAutoModeHeatDownBtn").Click 'Clicks on the decrease temp btn
IE.Document.All.Item("SubmitBtn").Click 'Submit changes to thermostat
WaitForLoad
Set SetTo1 = IE.Document.getElementByID("NonAutoHeatSetpt")
Set SetTo2 = SetTo1.getElementsByClassName("DisplayValue")
SetTo1은 HTML 요소로 돌아오고 SetTo2는 HTML 컬렉션으로 돌아옵니다.
위의 HTML 코드를 기반으로 내가 찾고있는 22.0이 "DisplayValue"HTML 컬렉션에 저장되어 있다고 생각합니다. 어떻게 사용하나요?
도와주세요.
컬렉션의 크기를 확인하려면 'length'를 사용하십시오.
Msgbox SetTo2.length 'will print how many items are present in the collection
값을 얻으려면 (색인은 0부터 시작)
Msgbox SetTo2.Item(0).InnerText 'will print 22.0
이 기사는 인터넷에서 수집됩니다. 재 인쇄 할 때 출처를 알려주십시오.
침해가 발생한 경우 연락 주시기 바랍니다[email protected] 삭제
몇 마디 만하겠습니다