当前位置: 首页 > news >正文

沈阳网站开发集团互联网营销推广公司

沈阳网站开发集团,互联网营销推广公司,沧州网站推广优化,免费淘宝客网站模板下载XPath路径表达式#xff0c;主要是对XML文档中的节点进行搜索#xff0c;通过XPath表达式可以对XML文档中的节点位置进行快速定位和访问#xff0c;html也是也是一种类似于xml的标记语言#xff0c;但是语法没有那么严谨#xff0c;在codeplex里有一个开源项目HtmlAgility…XPath路径表达式主要是对XML文档中的节点进行搜索通过XPath表达式可以对XML文档中的节点位置进行快速定位和访问html也是也是一种类似于xml的标记语言但是语法没有那么严谨在codeplex里有一个开源项目HtmlAgilityPack提供了用XPath解析HTML文件下面掩饰如何使用该类库的使用 首先说下XPath路径表达式 XPath路径表达式用来选取XML文档中的节点或节点集的1、术语节点Node7种类型元素属性文本命名空间处理命令注释文档根节点2、节点关系父Parent子Children同胞Sibling先辈Ancestor后代Descendant3、路径表达式nodename  节点名选取此节点的所有子节点  例 childnode  当前节点中的childnode子节点不包含孙子及以下的节点/     从根节点选取  例/root/childnode/grandsonnode  //     表示所有后代节点  例//childnode    所有名为childnode的后代节点.    表示当前节点  例  ./childnode    表示当前节点的childnode节点..     表示父节点  例  ../nearnode     表示父亲节点的nearnode子节点选取属性  /root/childnode/id     表示childnode的所有含有id属性的节点集4、谓语Predicates谓语可以对节点集进行一些限制使选择更精确/root/book[1]    节点集中的第一个节点/root/book[last()]  节点集中最后一个节点/root/book[position() - 1]  节点集中倒数第二个节点集/root/book[position() 5]  节点集中前五个节点集/root/book[id]      节点集中含有属性id的节点集/root/book[idchinese]  节点集中id属性值为chinese的节点集/root/book[price 35]/title  节点集中book的price元素值大于35的title节点集5、通配符XPath路径中同样支持通配符**node() text()例  /bookstore/*//title[*]6、XPath轴定义相对于当前节点的节点集ancestor    所有祖先节点attribute    所有属性节点child      所有子元素descendant  所有后代节点子孙。。。following    结束标记后的所有节点      preceding   开始标记前的所有节点following-sibling  结束标记后的所有同胞节点preceding-sibling  开始标记前的所有同胞节点namespace   当前命名空间的所有节点parent     父节点self       当前节点用法轴名称::节点测试[谓语]例  ancestor::bookchild::text()7、运算符|  两个节点集的合并  例/root/book[1] | /root/book[3]-*devmod!orand  或和与//删除注释scriptstylenode.Descendants().Where(n n.Name script || n.Name style || n.Name#comment).ToList().ForEach(n n.Remove());//遍历node节点的所有后代节点foreach(var HtmlNode in node.Descendants()){}HtmlAgilityPack类库用法1、首先需要获取到html页面数据可以通过WebRequest类来获取public static string GetHtmlStr(string url){ try{WebRequest rGet WebRequest.Create(url);WebResponse rSet rGet.GetResponse();Stream s rSet.GetResponseStream();StreamReader reader new StreamReader(s, Encoding.UTF8);return reader.ReadToEnd();}catch (WebException){//连接失败return null;}}2、通过HtmlDocument类加载html数据string htmlstr GetHtmlStr(http://www.hao123.com);HtmlAgilityPack.HtmlDocument doc new HtmlAgilityPack.HtmlDocument();doc.LoadHtml(htmlstr);HtmlNode rootnode doc.DocumentNode; //XPath路径表达式这里表示选取所有span节点中的font最后一个子节点其中span节点的class属性值为num//根据网页的内容设置XPath路径表达式string xpathstring //span[classnum]/font[last()]; HtmlNodeCollection aa rootnode.SelectNodes(xpathstring); //所有找到的节点都是一个集合if(aa ! null){string innertext aa[0].InnerText;string color aa[0].GetAttributeValue(color, ); //获取color属性第二个参数为默认值//其他属性大家自己尝试}也可以通过HtmlWeb类来获得HtmlDocumentHtmlWeb web new HtmlWeb();HtmlAgilityPack.HtmlDocument doc web.Load(url);HtmlNode rootnode doc.DocumentNode;补充多个属性条件查询      //div[aligncenter and height24]不存在class属性       //div[not(class)]
http://www.huolong8.cn/news/256280/

相关文章:

  • 宿州市住房和城乡建设局网站新闻式软文经典案例
  • 做外贸兼职的网站有哪些网站备案 有什么用
  • 连接国外网站做端口映射怎么购买域名自己做网站
  • 东莞做网站系统wordpress私聊
  • 天津体验网站哈尔滨网站域名归那里管
  • 上海建网站手机app装修公司网络营销怎么做
  • 免费做视频网站怎么创个网站
  • 申请建设网站的报告邢台建一个网站多少钱
  • 网站app建设免费虚拟主机购买
  • 手机网站底部悬浮菜单wordpress demo data
  • 装修门户网站程序 cms域名大全免费看
  • 网页设计基础介绍北京seo关键词排名优化软件
  • 上线了建站教程青岛手机建站公司
  • 一些做淘宝优惠券的网站深圳专业做网站案例
  • 快递空包网站建设自己做个公司网站
  • 那种系统做网站比较好代理ip自动提取网站源码
  • 图书馆网站建设wordpress 多形式
  • ppt可以做网站公司变更说明
  • 学做网站论坛怎么样深圳商城网站设计电话
  • 网站创建网站网站搜索下拉是怎么做的
  • 建设网站的主要功能有哪些seo做什么网站赚钱
  • 优秀专题网站信息技术咨询公司
  • 站长工具查询官网长沙专业网站设计
  • 宁波专业的网站搭建公司1688网站建设方案书模板
  • 珠海企业网站合肥网络运营平台开发
  • 福州网站建设费用wordpress授权破解
  • 上饶建网站公司平面设计常用的软件
  • 地域购物网站建设部网站监理注销查询
  • 成都 高端网站建设国际贸易公司
  • 建设医院网站服务网站内页优化