Live-Forum - Die aktuellen Beiträge
Anzeige
Archiv - Navigation
1924to1928
Aktuelles Verzeichnis
Verzeichnis Index
Übersicht Verzeichnisse
Vorheriger Thread
Rückwärts Blättern
Nächster Thread
Vorwärts blättern
Anzeige
HERBERS
Excel-Forum (Archiv)
20+ Jahre Excel-Kompetenz: Von Anwendern, für Anwender
Inhaltsverzeichnis

Eine Zahl aus einer Websit Auslesen

Eine Zahl aus einer Websit Auslesen
14.04.2023 10:47:26
RItzl

Hallo,
kann mir jemand helfen? Ich möchte eine einzige Zahl via VBA aus dieser Website auslesen und im Excel speichern. https://edition.cnn.com/markets/fear-and-greed?utm_source=business_ribbon. Der Code den mir BING vorschlägt funktioniert nicht. Vielen Dank

Sub FearAndGreedIndex()
Dim ie As Object
Set ie = CreateObject("InternetExplorer.Application")
ie.Visible = False
ie.navigate "https://edition.cnn.com/markets/fear-and-greed"
Do While ie.Busy Or ie.readyState > 4
DoEvents
Loop
Dim htmlDoc As Object
Set htmlDoc = ie.document
Dim elements As Object
Set elements = htmlDoc.getElementsByTagName("span")
Dim element As Object
For Each element In elements
If element.className = "FearGreed-heading" Then
Range("A1").Value = element.innerText
Exit For
End If
Next element
ie.Quit
End Sub

8
Beiträge zum Forumthread
Beiträge zu diesem Forumthread

Betreff
Datum
Anwender
Anzeige
AW: Eine Zahl aus einer Websit Auslesen
14.04.2023 14:10:34
Zwenn
Hallo Ritzi,

ChatGPT kann solche Fragen nur zweifelhaft beantworten. Dem Quellcode ist nicht einmal zu entnehmen, welche Zahl Du denn auslesen möchtest. Den Wert "FearGreed-heading" gibt es im gesamten Dokument nicht. Abgesehen davon sollte Bing wissen, dass der IE tot ist. Ist ja immerhin beides von MS ;-)

Viele Grüße,

Zwenn


AW: Eine Zahl aus einer Websit Auslesen
14.04.2023 16:42:48
RItzl
Danke ich möchte nur den aktuellen Wert des Fear and Greed Index rauslesen. also z.B. "68"
Auf der Website bzw. im HTML Code sehe ich: 68 --- und genau diese Zahl möchte ich rauslesen, also die 68 aber wie?


Anzeige
AW: Eine Zahl aus einer Websit Auslesen
14.04.2023 16:44:48
RItzl
" 68 "


AW: Eine Zahl aus einer Websit Auslesen
14.04.2023 17:51:56
Zwenn
Die Zahl steht in einem JSON. Die erste Gruppe ist fear_and_greed und ich gehe davon aus, es handelt sich um die Zahl zum Schlüssel score, also direkt der erste Wert. Das ist eine Kommazahl, aber gerundet stimmt sie. Sie ist einfach nur genauer. In der URL musst Du lediglich dafür sorgen, dass das Datum richtig ist.
https://production.dataviz.cnn.io/index/fearandgreed/graphdata/2023-04-14

An den Wert kannst Du mit String Operationen kommen. Du kannst aber auch den JSONConverter von Tim Hall bemühen, wenn Du ihn verstehst. Der hilft beim Verarbeiten der Datei und teilt sie in Dictionaries und Cellections auf. Jedes geschweifte Klammerpaar {} ergibt ein Dictionary. Jedes eckige Klammerpar [] ergibt eine Collection.

Runterladen kannst Du das JSON über xhr. Falls Du nicht weißt wie das geht, muss ich mal in den Untiefen meiner Festplatte suchen. Ich habe da irgendwo eine Funktion für rumfliegen, die ich mal dafür geschrieben habe.


Anzeige
AW: Eine Zahl aus einer Websit Auslesen
14.04.2023 18:09:05
Zwenn
Habe eine Funktion zum Runterladen des JSON ohne doppelten Boden geschrieben. Das Ding fängt keine Fehler ab, aber Du kannst sehen, wie das Ganze funktionert. Du übergibst ihr einfach die fertige URL und bekommst das JSON als String zurück geliefert:

Function GetJSON(url As String) As String

  With CreateObject("MSXML2.XMLHTTP.6.0")
    .Open "GET", url, False
    .setRequestHeader "Content-Type", "application/json"
    .send
    GetJSON = .responseText
  End With
End Function
Damit kannst Du das ausprobieren:

Sub TestJSON()
Debug.Print GetJSON("https://production.dataviz.cnn.io/index/fearandgreed/graphdata/2023-04-14")
End Sub


Anzeige
AW: Eine Zahl aus einer Websit Auslesen
14.04.2023 18:16:14
RItzl
Genial !!! 1000 Danke


AW: Eine Zahl aus einer Websit Auslesen
14.04.2023 18:09:30
RItzl
Vielen Dank, aber da verstehe ich leider Bahnhof. Wärst Du so liebe mir diese VBA routine zu posten? Ja genau, diese Zahl möchte ich, egal ob gerundet oder nicht. VBA mit String Operationen wäre toll, aber wie bekomme ich diesen Wert in einen String?

301 Forumthreads zu ähnlichen Themen

Anzeige
Anzeige
Anzeige

Beliebteste Forumthreads (12 Monate)

Anzeige

Beliebteste Forumthreads (12 Monate)

Anzeige
Anzeige
Anzeige