如何使用anglesharp

时间:2017-01-28 11:38:54

标签: c# android xamarin anglesharp

我确实使用webview来获取整个页面源并将其写入文件

所以我现在需要从文件中提取所有图像

我使用StreamReader读取文件,并将其提供给字符串Called TheHtmlSource,如代码所示

这是我的代码

        var config = Configuration.Default.WithDefaultLoader();
        for (int i = 0; i < TheHtmlSource.Length; i++)
        {
            string theImageUrl = (await BrowsingContext.New(config).OpenAsync(TheHtmlSource))
                .DocumentElement.Descendents()
                .Where(x => x.NodeType == NodeType.Element)
                .OfType<IHtmlImageElement>()
                .Where(x => x.Attributes["class"]?.Value == "_icyx7")
                .Select(x => x.Attributes["src"]?.Value)
                .FirstOrDefault();
            int index = theImageUrl.IndexOf("?");
            string fixedImageUrl = theImageUrl.Remove(index);
            _list.Add(new AllImageUrls()
            {
                url = fixedImageUrl
            });
        }

但我不能正常工作我一直得到NullReference错误

我在Visual Studio中使用Xamarin

非常感谢任何帮助

1 个答案:

答案 0 :(得分:0)

total-items="planCount"接受一个字符串,该字符串应该是一个地址。从您的描述中,您将源字符串传递给此方法,该方法无效。

如果要解析源字符串,可以使用await BrowsingContext.New(config).OpenAsync(addressString)AngleSharp.Parser.Html.HtmlParser可以找到它的使用情况。