Excel 使用VBA XMLHTTP GetElementsByCassName()从Twitter获取信息时出现错误438
我对Excel VBA编程的知识有限。 无法使用VBA XMLHTTPExcel 使用VBA XMLHTTP GetElementsByCassName()从Twitter获取信息时出现错误438,excel,vba,web-scraping,twitter,Excel,Vba,Web Scraping,Twitter,我对Excel VBA编程的知识有限。 无法使用VBA XMLHTTPGetElementsByCassName()从Twitter获取数据,这通常会导致错误438 ss1 = HTML.getElementsByClassName("css-1dbjc4n r-1oszu61 r-1niwhzg r-18u37iz r-16y2uox r-2llsf r-13qz1uu") 导致错误消息: 对象不支持此属性或方法 HTML.all都可以,但是如果我使用了getElementsbyClass
GetElementsByCassName()
从Twitter获取数据,这通常会导致错误438
ss1 = HTML.getElementsByClassName("css-1dbjc4n r-1oszu61 r-1niwhzg r-18u37iz r-16y2uox r-2llsf r-13qz1uu")
导致错误消息:
对象不支持此属性或方法
HTML.all
都可以,但是如果我使用了getElementsbyClassName
,它就失败了
Sub Fetch_Twit_1()
Dim HTML1 As New HTMLDocument, elem As Object, ss1 As Object, URL$
URL = "https://twitter.com/realdonaldtrump"
With CreateObject("MSXML2.XMLHTTP")
.Open "GET", URL, False
.send
Set HTML = CreateObject("htmlfile")
If .Status = 200 Then
HTML.body.innerHTML = .responseText
Else: MsgBox "Error"
End If
ss1 = HTML.getElementsByClassName("css-1dbjc4n r-1oszu61 r-1niwhzg r-18u37iz r-16y2uox r-2llsf r-13qz1uu")
For Each element In ss1
ActiveCell.Value = element.innerText
ActiveCell.Offset(0, 1).Value = element.ID
ActiveCell.Offset(1, 0).Select
Next element
Set HTML = Nothing
End With
End Sub
我建议使用Twitter API,否则每次Twitter在其网站上更改某些内容时,您的代码都会中断。
ss1
需要set
。这个HTML.getElementsByCassName()
返回一个对象集合,它本身就是一个对象。因此需要声明ss1
,并相应地设置set
。使用官方API。另外,当您已经声明并实例化了一个名为HTML1的HTMLDocument对象时,为什么要使用这个Set HTML=CreateObject(“htmlfile”)
?我建议使用Twitter API,否则每次Twitter在其网站上更改某些内容时,您的代码都会被破坏。ss1
需要是Set
。这个HTML.getElementsByCassName()
返回一个对象集合,它本身就是一个对象。因此需要声明ss1
,并相应地设置set
。使用官方API。另外,既然已经声明并实例化了一个名为HTML1的HTMLDocument对象,为什么还要使用这个Set HTML=CreateObject(“htmlfile”)
?