添加链接
link之家
链接快照平台
  • 输入网页链接,自动生成快照
  • 标签化管理网页链接

HtmlAgilityPack是.net下的一个HTML解析类库。支持用XPath来解析HTML。简单的来说,在页面上查询元素速度更快,更准。

      HtmlWeb web = new HtmlWeb();//创建Web请求
      HtmlAgilityPack.HtmlDocument doc = web.Load(m);//加载页面的链接
      var json = Common.Http_Get(m);//获取网页源代码
      //获取某个节点的集合,这里获取出现 p 标签 的集合            
      var nodes = doc.DocumentNode.SelectNodes("//p");
       //遍历集合                                 
      foreach (HtmlNode node in nodes)
             //获取其中一个出现p标签的HTML源码
             HtmlNode thumbnail = HtmlNode.CreateNode(node.OuterHtml);
             //获取p标签文本内容
             var thumbnailstr = thumbnail.InnerText.Trim();
             // 获取img目录下的img标签中的图片链接
             var img_node = thumbnail.SelectSingleNode("//img");
             var img = img_node.Attributes["src"].Value;
             //获取a目录下a标签class属性为ql-link 的节点
             var link_node = thumbnail.SelectSingleNode("//a[@class='ql-link']");
             var link = link_node.Attributes["href"].Value;
            }catch{}

注意:记得XPath表达式要写对,否则会报错或查询不到某元素
/ {从根节点选取}
// {选择元素后代元素,必须在后面跟上nodeName}
. {选取当前节点}
… {选取当前节点的父节点}
@ {选取属性节点(@是attribute的缩写)}
/root/child[3] {选取root元素的第三个child子元素,注意,这和数组下标不一样,从1开始计数}
//child[@attr] {选取所有具有属性attr的child元素}
body/p[position()=4] {这个XPath表达式将选取body子元素中第4个p元素,注意这里从1开始计数}
//div[@class=‘ql-link’] {获取某个class属性为ql-link 的div 层 }

HtmlAgilityPack是.net下的一个HTML解析类库。支持用XPath来解析HTML。简单的来说,在页面上查询元素速度更快,更准。 HtmlWeb web = new HtmlWeb();//创建Web请求 HtmlAgilityPack.HtmlDocument doc = web.Load(m);//加载页面的链接 var json = Common.Http_Get(m);//获取网页源代码 //获取某个节点的集合,这里获取出现 p 标签 的
1.下载HtmlAgilityPack.dll并将其添加引用到项目中,然后在代码中声明引用。 下载地址:http://www.codeplex.com/htmlagilitypack using HtmlAgilityPack; CSDN-Ada助手: 非常感谢这篇博客《Git 常用命令》,我觉得这样的技术文章对其他用户学习Git非常有帮助。下一篇你可以继续就Git的分支管理或者团队协作方面继续写,相信会有更多读者受益。加油! 为了方便博主创作,提高生产力,CSDN上线了AI写作助手功能,就在创作编辑器右侧哦~(https://mp.csdn.net/edit?utm_source=blog_comment_recall )诚邀您来加入测评,到此(https://activity.csdn.net/creatActivity?id=10450&utm_source=blog_comment_recall)发布测评文章即可获得「话题勋章」,同时还有机会拿定制奖牌。 C# 下载文件到本地(一般用于下载线上图片或视频) havingzhou: 我找到原因了,so = new FileStream(filename, FileMode.Create);的filename需要拼接文件名字 C# 下载文件到本地(一般用于下载线上图片或视频) havingzhou: 文件夹权限都给了还是这样 C# 下载文件到本地(一般用于下载线上图片或视频) havingzhou: 下载下来文件提示Access to the path 'D:\' is denied. JAVA 解析json字符串常用方法 成至智能: 简单易懂,点赞