PlayStation 에서 데이터를 긁어 내기 위해 Windows Phone 8.0 Silverlight App을 사용하려고합니다.
그러나 사이트에서 Javascript를 사용하고 htmlagilitypack을 사용하여 액세스하는 데 문제가 있다고 생각합니다.
지금까지 내 코드는 다음과 같습니다.
protected async override void OnNavigatedTo(NavigationEventArgs e)
{
base.OnNavigatedTo(e);
string htmlPageLive = "";
using (var client = new HttpClient())
{
htmlPageLive = await client.GetStringAsync("https://store.sonyentertainmentnetwork.com/#!/en-us/free-games/cid=STORE-MSF77008-PSPLUSFREEGAMES?smcid=pdc:us-en:ps-plus:sub-nav-new-arrivals");
}
HtmlDocument htmlDocumentLive = new HtmlDocument();
htmlDocumentLive.LoadHtml(htmlPageLive);
foreach (var div in htmlDocumentLive.DocumentNode.SelectNodes("//ul[@class= 'pane pane0']"))
{
PSPGames newGame = new PSPGames();
newGame.Title = div.SelectSingleNode(".//h3[@class= 'cellTitle']").InnerText.Trim();
}
lstPSPGame.ItemsSource = PSPgame;
customIndeterminateProgressBar.Visibility = Visibility.Collapsed;
}
그러나 'pane pane0'노드를 찾으려고 할 때 응용 프로그램이 'foreach'줄에서 충돌합니다.
데이터를 긁을 수 있습니까? 그렇다면 무엇을해야합니까?
미리 감사드립니다.
비동기 적으로로드되기 때문에 HtmlAgilityPack으로 데이터를 긁을 수 없습니다. 페이지를 질의 할 때 얻을 수있는 것은 해골입니다.
당신이 시도 할 수있는 것은 네트워크 호출을 감시하고 공용 웹 서비스가 호출되는지 확인하는 것입니다. json 또는 xml 데이터 찾기