当谈到Windows Phone 8开发时,我相当新颖,而且我一直在做一些事情,作为我正在开发的应用程序的一部分。HTML解析单个表/不是所有数据都被解析?
现在我试图解析从网站的信息,如RUNESCAPE 07高分 - http://services.runescape.com/m=hiscore_oldschool/hiscorepersonal.ws?user1=zezima
我使用的HTML敏捷性包,我能够解析一些数据(下降到木刻),但通过的东西不会出现? (那是到我的列表框的大小?)
理想情况下,我希望能在一个块解析表信息单独,而不是像这样:
public MainPage()
{
InitializeComponent();
HtmlWeb.LoadAsync("http://services.runescape.com/m=hiscore_oldschool/hiscorepersonal.ws?user1=zezima", DownLoadCompleted);
}
void DownLoadCompleted(object sender, HtmlDocumentLoadCompleted e)
{
if(e.Error == null)
{
HtmlDocument doc = e.Document;
if (doc != null)
{
var result = doc.DocumentNode.SelectNodes("//div[@id='contentHiscores']");
foreach (var htmlNode in result)
{
lBox.Items.Add(htmlNode.InnerText);
}
}
}
但如果我尝试并访问一个单独的表,如这个使用
var result = doc.DocumentNode.SelectNodes("//div[@id='contentHiscores']/table/tbody/tr[5]/td[2]");
我得到一个NullReferenceException。
这是可能的还是我在做一些特别错误的事情?
是它导致这就是空或属性的innerText? –
当试图访问特定点时,它的结果为空,结果为null。 – Optimistic
如果将它分解一点,当你得到一个非空的结果时,随时删除每个子查询? –