Cet article présente principalement l'utilisation du C#RegularExpression capture les informations du site Web et analyse les techniques C# liées aux opérations d'exploration régulières des informations sur les pages Web sous forme d'exemples. Les amis dans le besoin peuvent se référer à
Cet article explique. les exemples La méthode d'utilisation d'expressions régulières pour capturer les informations du site Web en C# est partagée avec vous pour votre référence. Les détails sont les suivants :
Voici un exemple de capture des détails du produit JD.com . 🎜>1. Créez la classe de programme JdRobber.cs
2. Créez la classe de méthode publique WebHandler.cs
public class JdRobber { /// <summary> /// 判断是否京东链接 /// </summary> /// <param name="param"></param> /// <returns></returns> public bool ValidationUrl(string url) { bool result = false; if (!String.IsNullOrEmpty(url)) { Regex regex = new Regex(@"^http://item.jd.com/\d+.html$"); Match match = regex.Match(url); if (match.Success) { result = true; } } return result; } /// <summary> /// 抓取京东信息 /// </summary> /// <param name="param"></param> /// <returns></returns> public void GetInfo(string url) { if (ValidationUrl(url)) { string htmlStr = WebHandler.GetHtmlStr(url, "Default"); if (!String.IsNullOrEmpty(htmlStr)) { string pattern = ""; //正则表达式 string sourceWebID = ""; //商品关键ID string title = ""; //标题 decimal price = 0; //价格 string picName = ""; //图片 //提取商品关键ID pattern = @"http://item.jd.com/(?<Object>\d+).html"; sourceWebID = WebHandler.GetRegexText(url, pattern); //提取标题 pattern = @"<p.*id=\""name\"".*>[\s\S]*<h1>(?<Object>.*?)</h1>"; title = WebHandler.GetRegexText(htmlStr, pattern); //提取图片 int begin = htmlStr.IndexOf("<p id=\"spec-n1\""); int end = htmlStr.IndexOf("</p>", begin + 1); if (begin > 0 && end > 0) { string subPicHtml = htmlStr.Substring(begin, end - begin); pattern = @"<img.*src=\""(?<Object>.*?)\"".*/>"; picName = WebHandler.GetRegexText(subPicHtml, pattern); } //提取价格 if (sourceWebID != "") { string priceUrl = @"http://p.3.cn/prices/get?skuid=J_" + sourceWebID + "&type=1"; string priceJson = WebHandler.GetHtmlStr(priceUrl, "Default"); pattern = @"\""p\"":\""(?<Object>\d+(\.\d{1,2})?)\"""; price = WebHandler.GetValidPrice(WebHandler.GetRegexText(priceJson, pattern)); } Console.WriteLine("商品名称:{0}", title); Console.WriteLine("图片:{0}", picName); Console.WriteLine("价格:{0}", price); } } } }
Ce qui précède est le contenu détaillé de. pour plus d'informations, suivez d'autres articles connexes sur le site Web de PHP en chinois!