ASP.NET Core · C# · Yahoo Finance API

The Magnificent 7

En webbapplikation där du kan följa aktierna för USA:s sju största techbolag i realtid med kursutveckling i tydliga charts.

Metod – Hur hämtas data?

Från början hämtades data genom web scraping med biblioteket HtmlAgilityPack, vilket innebar att koden laddade ner HTML-koden från slickcharts.com och letade igenom den efter tabelldata. Detta slutade fungera när slickcharts lade till Cloudflare-skydd som blockerar automatiska requests.

Nuvarande lösning – YahooFinanceApi

Data hämtas nu via NuGet-paketet YahooFinanceApi som kommunicerar direkt med Yahoo Finance. Det är ett gränssnitt byggt för programmatisk åtkomst till aktiedata i realtid.

Metoden är async vilket betyder att programmet inte fryser medan det väntar på svar. Tabellen uppdateras automatiskt var 10:e sekund utan att sidan behöver laddas om.

Kodsnutt – Så här hämtas datan

var securities = await Yahoo.Symbols(symbols).Fields( Field.RegularMarketPrice, Field.RegularMarketChange, Field.RegularMarketChangePercent, Field.MarketCap ).QueryAsync();

Här skickas en förfrågan till Yahoo Finance med de sju aktiesymbolerna. Svaret innehåller pris, förändring i dollar, förändring i procent samt marknadsvärde. Rankingen räknas sedan ut dynamiskt baserat på marknadsvärdet så att listan alltid är korrekt sorterad.

⬅ Tillbaka till portfolio Gå till projektet →