본문 바로가기
  • 환영 합니다 ! Welcome!
VBA For Windchill

VBA Web Parsing 2/2

by ToolBOX01 2024. 6. 30.
반응형

□ XMLHTTP 라이브러리

XMLHTTP는 VBA(Visual Basic for Applications)에서 웹 서버와의 HTTP 통신을 가능하게 해주는 객체입니다. 이 객체를 사용하면 VBA 코드에서 HTTP 요청을 보내고, 웹 서버로부터 응답을 받을 수 있습니다. 이를 통해 웹 페이지의 데이터를 가져오거나 웹 API와 통신할 수 있습니다.

Open . HTTP 요청을 초기화합니다.
. 구문: Open(method, url, async, username, password)
. 예: http.Open "GET", "https://example.com", False
Send . HTTP 요청을 서버에 보냅니다.
. 구문: Send(body)
. 예: http.Send
setRequestHeader .HTTP 요청 헤더를 설정합니다.
.구문: setRequestHeader(header, value)
.예: http.setRequestHeader "Content-Type", "application/x-www-form-urlencoded"
responseText .서버로부터 받은 응답을 문자열로 반환합니다.
.구문: responseText
.예: Dim response As String: response = http.responseText
responseXML .서버로부터 받은 응답을 XML DOM 객체로 반환합니다.
.구문: responseXML
.예: Set xmlDoc = http.responseXML
status .HTTP 응답 상태 코드를 반환합니다.
.구문: status
.예: If http.status = 200 Then
statusText .HTTP 응답 상태 텍스트를 반환합니다.
.구문: statusText
.예: Dim statusText As String: statusText = http.statusText

 

샘플코드

Sub GetWebPageData()
    Dim http As Object
    Dim url As String
    Dim responseText As String

    ' XMLHTTP 객체 생성
    Set http = CreateObject("MSXML2.XMLHTTP")
    
    ' 요청할 URL 설정
    url = "https://example.com"
    
    ' GET 요청 초기화
    http.Open "GET", url, False
    
    ' 요청 보내기
    http.Send
    
    ' 상태 코드 확인
    If http.status = 200 Then
        ' 응답 텍스트 가져오기
        responseText = http.responseText
        ' Immediate Window에 출력
        Debug.Print responseText
    Else
        ' 오류 상태 코드 처리
        Debug.Print "HTTP 요청 실패: " & http.status & " - " & http.statusText
    End If

    ' 객체 해제
    Set http = Nothing
End Sub

 

 

참고자료

 

🌐 HTTP 메서드 종류 & 요청 흐름 💯 총정리

HTTP Method 종류 HTTP 메서드란 클라이언트와 서버 사이에 이루어지는 요청(Request)과 응답(Response) 데이터를 전송하는 방식을 일컫는다. 쉽게 말하면 서버에 주어진 리소스에 수행하길 원하는 행동,

inpa.tistory.com

 


 

 

'VBA For Windchill' 카테고리의 다른 글

Windchill REST Services (WRS)  (0) 2024.07.01
학습 03) Open API, 엑셀 VBA - WC 제품 이름 가져오기  (0) 2024.06.30
HTTP  (0) 2024.06.30
DOM (Document Object Model) 이란?  (0) 2024.06.30
VBA Web Parsing 1/2  (0) 2024.06.30