.NET Core 网络数据采集 -- 使用AngleSharp做html解析

之前用xpath来解析html,之前没有用过对这种选择元素的方式不熟悉,用着很别扭,后面看到AngleSharp这个尝试了一下发现可以像Jq一样选择元素,很是方便

 static async Task Main(string[] args)
        {
            var client = new HttpClient();
            HttpResponseMessage response = await client.GetAsync("https://www.sciencedirect.com/browse/journals-and-books/g?contentType=JL");
            response.EnsureSuccessStatusCode();
            var responseBody = await response.Content.ReadAsStringAsync();
            await ReadWithAngleSharpAsync(responseBody);
            Console.ReadLine();
        }
 public static async Task ReadWithAngleSharpAsync(string html)
        {
            var parser = new HtmlParser();
            var document = await parser.ParseDocumentAsync(html);
            var hmlt_a = document.QuerySelectorAll("#publication-list li a");
            foreach (var item in hmlt_a)
            {
                Console.WriteLine($"标题:{item.TextContent},链接:{item.Attributes["href"].Value}");
            }
        }

详细:.NET Core 网络数据采集 -- 使用AngleSharp做html解析

posted @ 2020-09-27 10:54  LBO.net  阅读(274)  评论(0编辑  收藏  举报
//返回顶部