|
求教各位大神,因对http这部份不是很懂,从网上找的代码,自已也研究了半天,但还是没有成功,想请大定帮忙看一下。
问题:发送请求后,http.responseText返回的内容是错误的,查找了请求先关的代码,实在找不出原因。求指点。
- Private Sub 收件信息识别()
- For i = 2 To Range("A1").End(xlDown).Row
-
- addaress = Range("a" & i).Value
-
- Url = "https://www.youbianku.cn/api/search_street_custom.php?address=" & addaress & "&key=MjAyMS02LTMweW91Ymlhbmt1c3RyZWV0youbianku"
-
- Dim http As Object
-
- Set http = CreateObject("Microsoft.XMLHTTP") ' 创建 http 对象以发送请求
-
- http.Open "POST", Url, False ' 设置请求地址
-
- http.setRequestHeader "CONTENT-TYPE", "application/x-www-form-urlencoded" '设置请求头
-
- http.send '发送请求
-
- If http.Status = 200 Then
-
- Dim json '定义字符串 json
-
- json = http.responseText '获取相应结果
-
- MsgBox json
-
- '接下来是解析 json
-
- strJSON = "var json=" & json
-
- objSC.AddCode (strJSON) '将 json 由字符串解析为对象
-
- Dim geocodes
-
- geocodes = objSC.Eval("json.geocodes")
-
- If geocodes <> "" Then
-
- Dim province$
-
- province = objSC.Eval("json.geocodes[0].province")
-
- If province <> "" Then
-
- Cells(i, "C").Value = objSC.Eval("json.geocodes[0].province") '将省填入 Excel 表格
-
- Cells(i, "D").Value = objSC.Eval("json.geocodes[0].city") '将市填入 Excel 表格
-
- Cells(i, "E").Value = objSC.Eval("json.geocodes[0].district") '将区填入 Excel 表格
-
- End If
-
- End If
-
- End If
- Next
- End Sub
复制代码
|
|