我需要你的帮助? 我想要的是在这个网站上抓取 https://www.tdcc.com.tw/smWeb/QryStockAjax.do ,它的 Ajax 所以我使用 winhttp 并设置请求标头但不起作用并显示错误 -2147217871 (80040e31),所以有人能帮我解决我的问题吗?非常感谢 下面是我的代码
Sub S_Data_Winhttp()
With CreateObject("WinHttp.WinHttpRequest.5.1")
.Open "POST", "https://www.tdcc.com.tw/smWeb/QryStockAjax.do", False
.setRequestHeader "Refere", "https://www.tdcc.com.tw/smWeb/QryStockAjax.do"
.setRequestHeader "User-Agent", "Mozilla/5.0 (Macintosh; Intel Mac OS X 10_12_6) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/61.0.3163.100 Safari/537.36"
.setRequestHeader "Host", "www.tdcc.com.tw"
.setRequestHeader "Origin", "https://www.tdcc.com.tw"
.setRequestHeader "Cookie", "JSESSIONID=00000tcr1SnX5f-pKv5ztZ4yGdD:19tmdfpi3"
.setRequestHeader "Accept", "text/html,application/xhtml+xml,application/xml;q=0.9,image/avif,image/webp,image/apng,*/*;q=0.8,application/signed-exchange;v=b3;q=0.9"
.setRequestHeader "Accept-Encoding", "gzip, deflate, br"
.setRequestHeader "Accept-Language", "zh-TW,zh;q=0.9,en-US;q=0.8,en;q=0.7"
.setRequestHeader "Content-Type", "application/x-www-form-urlencoded"
.setRequestHeader "sec-ch-ua-mobile", "?0"
.setRequestHeader "Sec-Fetch-Dest", "document"
.setRequestHeader "Sec-Fetch-Mode", "navigate"
.setRequestHeader "Sec-Fetch-Site", "same-origin"
.setRequestHeader "Sec-Fetch-User", "?1"
.setRequestHeader "Upgrade-Insecure-Requests", "1"
.SetTimeouts 5000, 5000, 5000, 5000
.setRequestHeader "Connection", "Keep-Alive"
.send "scaDates=20210401&scaDate=20210401&SqlMethod=StockNo&StockNo=4961&StockName=&REQ_OPR=SELECT&clkStockNo=4961&clkStockName="
.WaitForResponse
resptxt = .responsetext
End With
End Sub