C#使用xpath简单爬取网站的内容
public static void Get() { // string xpathtrI = "//*[@id='classify-list']/dl/dd/a/cite/span/i"; #region 获取首页的分类 ////主页的html地址 //string urlHome = "http://www.qidian.com/"; //HtmlWeb web = new HtmlWeb(); //HtmlAgilityPack.HtmlDocument htmlDoc = web.Load(urlHome); ////创建html的节点 //HtmlNode rootNode1 = htmlDoc.DocumentNode; //string xpathtrA = "//*[@id='classify-list']/dl/dd"; //HtmlNodeCollection classList = rootNode1.SelectNodes(xpathtrA); //List<string> listINode = new List<string>(); //foreach (HtmlNode item in classList) //{ // //获取分类 // string inode = item.SelectSingleNode("//a/cite/span/i").InnerText; // listINode.Add(inode); //} #endregion #region 分类及明细 //string urlDetail = "http://xuanhuan.qidian.com/"; //List<string> urlList = new List<string>(); //urlList.Add("http://xuanhuan.qidian.com/"); //urlList.Add("http://qihuan.qidian.com/"); //urlList.Add("http://wuxia.qidian.com/"); //urlList.Add("http://xianxia.qidian.com/"); //urlList.Add("http://dushi.qidian.com/"); //urlList.Add("http://zhichang.qidian.com/"); //urlList.Add("http://junshi.qidian.com/"); //urlList.Add("http://lishi.qidian.com/"); //urlList.Add("http://youxi.qidian.com/"); //urlList.Add("http://tiyu.qidian.com/"); //urlList.Add("http://kehuan.qidian.com/"); //urlList.Add("http://lingyi.qidian.com/");//foreach (string url in urlList) //{ // HtmlAgilityPack.HtmlDocument htmlDetail = web.Load(url); // HtmlNode rootNode2 = htmlDetail.DocumentNode; // string a = "//*[@class='book-info']"; // HtmlNodeCollection classList2 = rootNode2.SelectNodes(a); // List<string> listINode2 = new List<string>(); // foreach (HtmlNode item in classList2) // { // //获取分类 // string inode = item.InnerHtml; // listINode2.Add(inode); // } //} #endregion #region 文章内容 HtmlWeb web = new HtmlWeb(); string u = "http://read.qidian.com/chapter/zOGI9RYmNdFhO--gcH8iFg2/h3iHSEH1cSpMs5iq0oQwLQ2"; HtmlAgilityPack.HtmlDocument htmlDocment = web.Load(u); //创建html的节点 HtmlNode htmlNode = htmlDocment.DocumentNode; string x = "//*[@class='read-content j_readContent']"; HtmlNode htmlNodeP = htmlNode.SelectSingleNode(x); string htmlD = htmlNodeP.InnerText; #endregion }
只是拿一个例子而已。
我是小白,新建立了一个的群:461431726,希望在这里和大家一起交流,共同学习。前端的话建议加群:646564351,谢谢
【推荐】国内首个AI IDE,深度理解中文开发场景,立即下载体验Trae
【推荐】编程新体验,更懂你的AI,立即体验豆包MarsCode编程助手
【推荐】抖音旗下AI助手豆包,你的智能百科全书,全免费不限次数
【推荐】轻量又高性能的 SSH 工具 IShell:AI 加持,快人一步
· Linux系列:如何用 C#调用 C方法造成内存泄露
· AI与.NET技术实操系列(二):开始使用ML.NET
· 记一次.NET内存居高不下排查解决与启示
· 探究高空视频全景AR技术的实现原理
· 理解Rust引用及其生命周期标识(上)
· 阿里最新开源QwQ-32B,效果媲美deepseek-r1满血版,部署成本又又又降低了!
· 单线程的Redis速度为什么快?
· SQL Server 2025 AI相关能力初探
· 展开说说关于C#中ORM框架的用法!
· AI编程工具终极对决:字节Trae VS Cursor,谁才是开发者新宠?