0

コメントで YouTube ユーザーを取得するための簡単なプログラムを作成しました。これがコードです

string html;
        using (var client = new WebClient())
        {
            html = client.DownloadString("http://www.youtube.com/watch?v=ER5EnjskCvE");
        }
        HtmlAgilityPack.HtmlDocument doc = new HtmlAgilityPack.HtmlDocument();
        doc.LoadHtml(html);
        List<string> data = new List<string>();
        HtmlNodeCollection nodeCollection = doc.DocumentNode.SelectNodes("//*[@id='comments-view']/ul[1]/li[1]/a/span/span/span/span/img");
        foreach (HtmlNode node in nodeCollection)
        {
            data.Add(node.GetAttributeValue("alt",null));
        }

しかし、nodeCollection が null を返すという問題があります。XPathの場合、F12の下でchromeのcopy XPathオプションを使用しました

4

1 に答える 1

0

これを試して、「*」、「div」を置き換えてください
"/html/body//div[@id='comments-view']/ul[1]/li[1]/a/span/span/span/span/img"

于 2016-12-16T06:15:50.147 に答える