直接上代码
//using System; //using System.Net.Http; //using System.Threading.Tasks; //using HtmlAgilityPack; //using Newtonsoft.Json; //class Program //{ // static async Task Main(string[] args) // { // using var httpClient = new HttpClient(); // var url = "https://go-upc.com/search?q=776545980144"; // 替换为你要获取数据的网页地址 // var response = await httpClient.GetAsync(url); // var htmlContent = await response.Content.ReadAsStringAsync(); // var htmlDocument = new HtmlDocument(); // htmlDocument.LoadHtml(htmlContent); // var selectedNode = htmlDocument.DocumentNode.SelectSingleNode("//div[@class='target-class']"); // if (selectedNode != null) // { // var data = selectedNode.InnerText; // 提取节点内部文本数据 // var jsonData = new { Data = data }; // var jsonResult = JsonConvert.SerializeObject(jsonData); // Console.WriteLine(jsonResult); // 返回JSON数据给前端 // } // } //} using System; using System.Net.Http; using System.Threading.Tasks; using HtmlAgilityPack; using Newtonsoft.Json; class Program { static async Task Main(string[] args) { using var httpClient = new HttpClient(); var url = "https://go-upc.com/search?q=776545980144"; // 替换为你要获取数据的网页地址 var response = await httpClient.GetAsync(url); var htmlContent = await response.Content.ReadAsStringAsync(); var htmlDocument = new HtmlDocument(); htmlDocument.LoadHtml(htmlContent); var productNameNode = htmlDocument.DocumentNode.SelectSingleNode("//h1[@class='product-name']"); var eanNode = htmlDocument.DocumentNode.SelectSingleNode("//td[@class='metadata-label'][contains(text(), 'EAN')]/following-sibling::td"); var upcNode = htmlDocument.DocumentNode.SelectSingleNode("//td[@class='metadata-label'][contains(text(), 'UPC')]/following-sibling::td"); var descriptionNode = htmlDocument.DocumentNode.SelectSingleNode("//h2[contains(text(), 'Description')]/following-sibling::span"); if (productNameNode != null && eanNode != null && upcNode != null && descriptionNode!=null) { var productName = productNameNode.InnerText.Trim(); var ean = eanNode.InnerText.Trim(); var upc = upcNode.InnerText.Trim(); var description = descriptionNode.InnerText.Trim(); var jsonData = new { ProductName = productName, EAN = ean, UPC = upc, Description = description }; var jsonResult = JsonConvert.SerializeObject(jsonData); Console.WriteLine(jsonResult); // 返回JSON数据给前端 Console.ReadLine(); } } }
标签:htmlDocument,网页,C#,System,获取,new,var,using,class From: https://www.cnblogs.com/Yytan-BK/p/17629953.html