Ich versuche, eine Webquery arbeiten zu lassen, aber es scheint, wird es einfach nicht. Mein Ziel ist es, den Quellcode einer Webseite zu scrappen. Leider scheint die Seite verschiedene Frames zu haben, weshalb mein Code nicht richtig funktioniert. Deshalb habe ich versucht, einen Code zu ändern, den ich online gefunden habe, der das Rahmenproblem lösen sollte. Das Problem ist, dass der Code nicht funktioniert, vielleicht weil er etwas älter zu sein scheint. Kann mir jemand helfen?VBA - Web-Abfrage - mehrere Frames
Der folgende Code erstellt Fehler (objecet erforderlich) an: "Set profileFrame .document.getElementById (" profileFrame ")"
Public Sub IE_Automation()
'Needs references to Microsoft Internet Controls and Microsoft HTML Object Library
Dim baseURL As String
Dim IE As InternetExplorer
Dim HTMLdoc As HTMLDocument
Dim profileFrame As HTMLIFrame
Dim slotsDiv As HTMLDivElement
'example URL with multiple frames
baseURL = "https://www.xing.com/search/members?section=members&keywords=IT&filters%5Bcontact_level%5D=non_contact"
Set IE = New InternetExplorer
With IE
.Visible = True
'Navigate to the main page
.navigate baseURL & "/publictrophy/index.htm?onlinename=ace_anubis"
While .Busy Or .readyState <> READYSTATE_COMPLETE: DoEvents: Wend
'Get the profileFrame iframe and navigate to it
Set profileFrame = .document.getElementById("profileFrame")
.navigate baseURL & profileFrame.src
While .Busy Or .readyState <> READYSTATE_COMPLETE: DoEvents: Wend
Set HTMLdoc = .document
End With
'Display all the text in the profileFrame iframe
MsgBox HTMLdoc.body.innerText
'Display just the text in the slots_container div
Set slotsDiv = HTMLdoc.getElementById("slots_container")
MsgBox slotsDiv.innerText
End Sub
Best wishes, Andreas
Hallo ryguy72 und vielen Dank! Leider bekomme ich einen Fehler "unserer Reichweite". Ich machte eine Arbeit für das Problem und ich benutze nun imacros chrome-Plugin, um den Inhalt zu verschrotten und dann über VBA in Excel importieren. Aber natürlich wäre ein direkter Weg wahrscheinlich viel bequemer. Viele Grüße Andreas – Andreas
Wenn Sie durch den Code gehen, indem Sie immer wieder F8 drücken, wo tritt der Fehler "unsere Reichweite" auf? Welche Zeile wirft den Fehler auf? Das sollte ein Hinweis sein. Obwohl, ich kann nicht vermuten, wo der Fehler wäre? Ich sehe nichts Verdächtiges und alles hat gut für mich funktioniert. – ryguy72