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

成都哪家公司做网站比较好淘宝推广公司

成都哪家公司做网站比较好,淘宝推广公司,网站独立ip如何做301重定向,专业做公墓 陵园的网站Java XPath 使用(2023/08/29) 文章目录 Java XPath 使用(2023/08/29)1. 前言2. 技术选型3. 技术实现 1. 前言 众所周知,Java 语言适合应用于 Web 开发领域,不擅长用来编写爬虫。但在 Web 开发过程中有时又…

Java XPath 使用(2023/08/29)

文章目录

  • Java XPath 使用(2023/08/29)
    • 1. 前言
    • 2. 技术选型
    • 3. 技术实现

1. 前言

众所周知,Java 语言适合应用于 Web 开发领域,不擅长用来编写爬虫。但在 Web 开发过程中有时又存在爬取数据的需求,此时采用其它语言编写独立爬虫模块的话存在维护不方便的问题,所以此处笔者选择了使用 Java + XPath 实现简单的爬虫功能,如果爬虫需求较多且复杂还是推荐采用其它语言实现独立的爬虫模块。

2. 技术选型

  1. JsoupXpath
    • 优点:使用简单;
    • 缺点:对 XPath 语法的支持有限;
  2. xsoup
    • 优点:使用简单;
    • 缺点:对 XPath 语法的支持有限;
  3. HtmlCleaner
    • 优点:使用简单;
    • 缺点:对 XPath 语法的支持有限;
  4. Java XPath
    • 优点:对 XPath 语法支持全面;
    • 缺点:对 xml 格式要求严格,几乎没有 Html 可以通过解析;
  5. HtmlCleaner + Java XPath
    • 优点:对 XPath 语法支持全面;
    • 缺点:使用相对复杂;

3. 技术实现

以 http://www.jnswj.net/jsp/sw/jnsw-skhdsq.jsp 网站和 //*[@id="MainTable"]/tbody/tr[position()>=5 and position()<=22]/td[position()=1 or (position()>=9 and position()<=13)] XPath 表达式为例,笔者测试了上述 5 种技术方案,其中只有第 5 种方案通过了测试,其它几种均出现了报错,故此处仅介绍第 5 种方案的实现。

  1. Maven 引入依赖;

    <!-- 获取 HTML 页面内容 -->
    <!-- https://mvnrepository.com/artifact/cn.hutool/hutool-http -->
    <dependency><groupId>cn.hutool</groupId><artifactId>hutool-http</artifactId><version>5.8.21</version>
    </dependency><!-- 解析 HTML -->
    <!-- https://mvnrepository.com/artifact/net.sourceforge.htmlcleaner/htmlcleaner -->
    <dependency><groupId>net.sourceforge.htmlcleaner</groupId><artifactId>htmlcleaner</artifactId><version>2.29</version>
    </dependency>
    
  2. 获取页面内容,并解析获取结果;

    import cn.hutool.http.HttpUtil;
    import org.htmlcleaner.CleanerProperties;
    import org.htmlcleaner.DomSerializer;
    import org.htmlcleaner.HtmlCleaner;
    import org.htmlcleaner.TagNode;
    import org.w3c.dom.Document;
    import org.w3c.dom.Node;
    import org.w3c.dom.NodeList;import javax.xml.parsers.ParserConfigurationException;
    import javax.xml.xpath.XPath;
    import javax.xml.xpath.XPathConstants;
    import javax.xml.xpath.XPathExpressionException;
    import javax.xml.xpath.XPathFactory;/*** 测试 HtmlCleaner + Java XPath.** @author <a href="mailto:xiaoQQya@126.com">xiaoQQya</a>* @since 2023/08/29*/
    private void test throws ParserConfigurationException, XPathExpressionException {// 获取 HTML 页面内容String url = "http://www.jnswj.net/jsp/sw/jnsw-skhdsq.jsp";String html = HttpUtil.get(url);// 解析 HTML 页面内容HtmlCleaner hc = new HtmlCleaner();TagNode tn = hc.clean(html);Document document = new DomSerializer(new CleanerProperties()).createDOM(tn);// 匹配获取需要的数据XPath xPath = XPathFactory.newInstance().newXPath();String exp = "//*[@id=\"MainTable\"]/tbody/tr[position()>=5 and position()<=22]/td[position()=1 or (position()>=9 and position()<=13)]";NodeList nodes = (NodeList) xPath.evaluate(exp, document, XPathConstants.NODESET);for (int length = nodes.getLength(), i = 0; i < length; i++) {Node item = nodes.item(i);System.out.println(item.getTextContent());}
    }
    

参考文章:

  • Java - XPath解析爬取内容 - Jinkora - 博客园 (cnblogs.com);
  • Intro to XPath with Java | Baeldung;
  • zhegexiaohuozi/JsoupXpath: 纯Java实现的支持W3C Xpath 1.0标准语法的HTML解析器。A html parser with xpath base on Jsoup and Antlr4. Maybe it is the best in java.Just try it. (github.com);
  • code4craft/xsoup: When jsoup meets XPath. (github.com);
http://www.dinnco.com/news/7958.html

相关文章:

  • 网站的原理日本域名注册网站
  • 沈阳唐朝网站建设上海专业网络推广公司
  • 深圳做网站报价网络销售怎么做
  • 辽宁省住房与城乡建设厅网站电商推广联盟
  • 防止网站独立ip被别人绑定百度推广官方电话
  • 前端怎么做网站网络营销的10个特点
  • 让别人做网站需要提供什么网站综合排名信息查询
  • 网站上全景云台怎么做的怎么做市场营销和推广
  • 做网站如何对接支付文件外链生成网站
  • 做网站需要的课程百度高级搜索首页
  • 济南手工网站建设公司百度小程序对网站seo
  • 自助建站帮助网网络营销课程培训机构
  • 设计师个人网站浏览器打开是2345网址导航
  • 住房和城乡建设部建设司网站首页域名查询工具
  • 网站制作jian she四川网站推广公司
  • 做静态网站的步骤东莞做一个企业网站
  • wordpress 替代 phpseo流量排名工具
  • 宜昌网站建设厂家互联网app推广具体怎么做
  • 新疆兵团建设局网站百度总部
  • 网站包括哪些主要内容互联网平台公司有哪些
  • 文化传播做网站推广吗网销怎么做
  • 合肥网站建设 乐云seo服装网络营销策划书
  • 十堰优化排名技术厂家竞价托管优化公司
  • wordpress如何设置cdnseo是啥软件
  • 哈尔滨网站建设方案外包优化资源配置
  • 昌平做网站公司网络营销第三版课本
  • 汕尾手机网站开发知了seo
  • 阿里云可以做哪些网站seo策略什么意思
  • html 网站模板真正免费的网站建站平
  • 网站开发开题报告公司品牌推广方案范文