如何提取網頁中的所有鏈接?
第一步,
打開Visual Studio 2019 ,如下圖所示:第二步,點擊文件,新建項目,選擇C#項目、Linux的控制臺項目,如下圖示:第三步,鼠標右鍵點擊解決方案、項目下的依懶項,如下圖所示:鼠標左鍵選擇管理NuGet程序包,然后出現如下圖界面:點擊瀏覽,輸入AngleSharp 名稱,如下圖所示:選擇上圖第一項,點擊右側的安裝按鈕,如下圖所示:鼠標點擊上圖中的確定按鈕,出現以下界面:表示已經將依懶項AngleSharp安裝到了項目中,如下圖所示:。第四步,右鍵雙擊解決方案項目下的Program.cs,打開源代碼文件Program.cs,編寫以下代碼,using System;using System.Linq;using AngleSharp;using AngleSharp.Html.Dom;namespace ConsoleGetAllLink{class Program{/// <summary>/// 讀取網頁的所有鏈接/// </summary>static async void ReadAllLink(){//創建一個場景var context = BrowsingContext.New(Configuration.Default.WithDefaultLoader());//以異步方式打開hao123網址首頁var document = await context.OpenAsync("https://www.hao123.com/");//查詢hao123網址首頁中所有的鏈接var allLinks = document.All.Where(m => m.LocalName == "a");//循環輸出鏈接的名稱和網址foreach(var link in allLinks){IHtmlAnchorElement ilink = link as IHtmlAnchorElement;Console.WriteLine($"{ilink.TextContent} ,{ilink.Href}");}}static void Main(string[] args){//讀取網頁的所有鏈接ReadAllLink();if(Console.ReadLine().ToLower() == "q"){}}}}第五步,按F5鍵調試運行,如下圖所示:運行結果:。