我正在使用Xamarin.Forms进行一个股票观察列表项目。在我使用IEX Cloud API之前收集股票价格,但我正在尝试使用Yahoo Finance API。Im使用以下代码,但result
返回空。
namespace Stock_WatchList
{
public partial class MainPage : ContentPage
{
public string ApplePrice { get; set; }
public string NioPrice { get; set; }
public string PalantirPrice { get; set; }
public string TeslaPrice { get; set; }
public string XpengPrice { get; set; }
public string AmazonPrice { get; set; }
public string PinduoduoPrice { get; set; }
public string DisneyPrice { get; set; }
public string AmdPrice { get; set; }
public string TwitterPrice { get; set; }
public MainPage()
{
InitializeComponent();
WebClient yahoo = new WebClient();
string yahooPrices = yahoo.DownloadString("https://query1.finance.yahoo.com/v7/finance/chart/AAPL?interval=5m ");
MatchCollection YahooMatches = System.Text.RegularExpressions.Regex.Matches(yahooPrices, @"""([^""]+)"":{""quote"":{""latestPrice"":(\d+(?:.\d+))}}");
foreach (Match match in YahooMatches)
{
switch (match.Groups[1].Value)
{
case "regularMarketPrice":
ApplePrice = $"$ {match.Groups[2].Value}";
break;
}
}
BindingContext = this;
}
private async void ImageButton_Clicked(object sender, EventArgs e)
{
await Navigation.PushAsync(new SearchPage());
}
}
}
有人能帮我解决这个问题吗?
我使用Postman调用了那个yahoo api,并以JSON的形式接收数据。我可以很容易地从那个程序中看到数据,我同意Jason的观点,在这种情况下,JSON解析器会更好地为您服务。