jsoup提取网页表格

不会编程程序猿 发布于 2017/03/30 17:09
阅读 558
收藏 0

java编程,利用jsoup提取网页表格,判断表格是否是规则的几行几列,连接数据库建立相应的表格。希望大神能够帮忙解决。

 

以下是我写的一点代码,能在原基础上修改,实现判断表格的行数和列数。(数据库部分还没有写)

 

package html2;
import java.io.IOException;
import java.text.ParseException;

import org.jsoup.Jsoup;
import org.jsoup.nodes.Document;
import org.jsoup.select.Elements;


public class test1 {

    public static void main(String[] args) throws ParseException {
        try{
            
            String url="http://cxxy.seu.edu.cn"; 
           
            Document document= Jsoup.connect(url).get();                                             
            Elements hang = document.select("table").select("tr");
            int rows=hang.size();
            
            for (int i = 0; i < rows; i++) {               
                
                Elements lie=hang.get(i).select("td");   
                int lines=lie.size();
                
                for(int j=i;j<lie.size();j++)
                {
                    
                    String texts=lie.get(j).text();
                    System.out.println(" "+texts);
                    
                }
                
            }
          
           
            
        }catch (IOException e) {
            System.out.println("解析出错!");
            e.printStackTrace();
        }           
        
   }
}

加载中
0
DeMoNHaDeS
DeMoNHaDeS

Element.getElementsByTag("tr")

Element.getElementsByTag("td")

1、获取第一行列数,与后面所有行作对比,来判断表格是否规则。

2、元素存到二维数组中,以便之后入库

 

DeMoNHaDeS
DeMoNHaDeS
回复 @不会编程程序猿 : 遍历每个td内的tr,将第一个td内tr的个数存下来到num0,后面每个td内tr的个数为num1,比较num0和num1
不会编程程序猿
不会编程程序猿
谢谢 请问“与后面所有行对比” 这部分代码怎么写?
返回顶部
顶部