jsoup解析html实现招聘信息查询

jsoup 是一款 Java 的 HTML 解析器,可直接解析某个 URL 地址、HTML 文本内容。它提供了一套非常省力的 API,可通过 DOM,CSS 以及类似于 jQuery 的操作方法来取出和操作数据。

下面是招聘网站的html信息:

 <div class="newlist_list_content" id="newlist_list_content_table"> 
    <table width="853" class="newlist" cellpadding="0" cellspacing="0">
     <tbody>
      <tr>
       <th class="zwmc"><span>职位名称span>th>
       <th class="gsmc">公司名称th> 
       <th class="zwyx">职位月薪th>
       <th class="gzdd">工作地点th>
       <th class="gxsj">发布日期th>
      tr>
     tbody>
table> 

    <table cellpadding="0" cellspacing="0" width="853" class="newlist"> 
     <tbody>
      <tr> 
       <td class="zwmc"> <input type="checkbox" name="vacancyid" value="CC415107716J90250224000_635_1_03_201__1_" onclick="zlapply.uncheckAll('allvacancyid')" />
        <div style="width:300px;float:left">
         <a style="font-weight: bold" par="ssidkey=y&ss=201&ff=03" href="http://jobs.zhaopin.com/415107716250224.htm" target="_blank">Android 开发工程师a>
        div> td> 

       <td class="gsmc"><a href="http://special.zhaopin.com/pagepublish/41510771/index.html" target="_blank">南京天洑软件有限公司a>td> 
       <td class="zwyx">面议td> 
       <td class="gzdd">南京td> 
       <td class="gxsj"><span>10-24span><a class="newlist_list_xlbtn" href="javascript:;">a>td> 
      tr> 
      <tr style="display: none" class="newlist_tr_detail"> 
       <td width="833px" style="line-height: 0;" colspan="5"> 
        <div class="newlist_detail"> 
         <div class="clearfix"> 
          <ul> 
           <li class="newlist_deatil_two"><span>地点:南京span><span>公司性质:民营span><span>公司规模:20-99人span><span>经验:1-3年span><span>学历:大专span>li>
           <li class="newlist_deatil_last"> 岗位职责: 1、根据需求,基于Android平台进行程序开发; 2、根据产品功能模块设计,编码实现各模块功能,并确保开发质量; 3、编写相关的开发文档。 任职要求: 1、大专以上学历, 计算机或相关专业者优先; 2、2年以上<b>Android开发b>经验; 3、熟悉Java编...li> 
          ul> 
          <dl> 
           <dt> 
            <a href="javascript:void(0)" onclick="return zlapply.searchjob.ajaxApplyBrig1('CC415107716J90250224000_635','ssi','_1_03_201__2_')"> <img src="/assets/images/newlist_sqimg_03.jpg" /> a> 
           dt> 
           <dd>
            <a href="javascript:zlapply.searchjob.saveOne('CC415107716J90250224000_635')"><img src="/assets/images/newlist_scimg_06.jpg" />a>
           dd> 
          dl> 
         div> 
        div> td>
      tr> 
     tbody>
table> 

下面使用 jsoup解析html获取招聘信息:

 public static  List parse(String html) {
         Document doc = Jsoup.parse(html);
         Elements elements = doc.getElementsByClass("newlist").select("tr");     
         List list=new ArrayList();

        for (Element ele : elements) {
           if (!ele.select("td").toString().equals("")) {
                String job_url = ele.getElementsByClass("zwmc").select("a").attr("href");
                String job = ele.getElementsByClass("zwmc").text();
                String company = ele.getElementsByClass("gsmc").text();
                String addr = ele.getElementsByClass("gzdd").text();
                String date = ele.getElementsByClass("gxsj").text();

                    HtmlFeed feed = new HtmlFeed();
    if (!job_url.toString().equals("")&&!job.toString().equals ("")&&!addr.toString().equals("")&&!company.toString().equals("")&&!date.toString().equals("")) {
        feed.setJob_url(job_url.toString());
        feed.setJob(job.toString());
        feed.setAddr(addr.toString());
        feed.setCompany(company.toString());
        feed.setDate(date.toString());

            list.add(feed);
                    }
        }

        }
        return list;
    }

效果图如下:
jsoup解析html实现招聘信息查询_第1张图片
jsoup解析html实现招聘信息查询_第2张图片
jsoup解析html实现招聘信息查询_第3张图片
jsoup解析html实现招聘信息查询_第4张图片

你可能感兴趣的:(Android开发,jsoup)