1127工作

做了有关网页内容的匹配工作:

       有几种方法:

          1、最土的 indexof,substring,这种上学时的小打小闹明显不适合工作中使用,只解析了十几个页面就字符串下标越界了,有时只处理了3个就越界了。。所以,把整个页面传过去解析的方法明显不适合。。换一种爬取页面的方法

       

          2、正则匹配。

              String regex="<title>.*?</title>";
              Pattern pat=Pattern.compile(regex);
              Matcher  match=pat.matcher(str);
              if(match.find()){
                      System.out.println(match.group());
               }

            还是操作整个页面
  

          3、Jsoup,前辈告我这个类。可以将网页内容分类操作,但一定要把它的jar包传到虚拟机里面,并添加路径:

export HADOOP_CLASSPATH="/usrb/hive/*:/usrb/hiveb/*:/usrb/hbase/*:/usrb/hbaseb/*:/home/clickwiseb/jsoup-1.7.3.jar"。

他还说 不要在不知道大小的情况下开辟数组空间 我有一句代码:String[] aim = new Sring[15]; 

                http://www.jb51.net/article/43485.htm

                但这个类可能会超时,解决方法是设置时长

 

		Document doc = Jsoup.connect("http://item.yhd.com/item/33957949").timeout(5000).get ();    //防止有些页面响应慢设置了延时
		String title = doc.title();
		System.out.println(title);
		Elements div=doc.select("div.crumb").select(".clearfix");  //根据div找 div class="crumb clearfix"
		for(Element el:div){
			for(Element el1:el.select("a")){						//在找出里面的超链接a
				System.out.println(el1.text());
			}
			for(Element el1:el.select("span")){						//最后一个span
				System.out.println(el1.text());
			}			
		}

 

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值