81,091
社区成员
发帖
与我相关
我的任务
分享
public class MySelfInfo {
//存取抓取到的公司地址
public static ArrayList<String> companyMan=new ArrayList<String>();
public static void getRowBykeyword(String url,String keyword){
try {
//抓取我的关键字
Parser parser=new Parser(url);
TagNameFilter filter=new TagNameFilter("tr");
NodeList nodelist=parser.extractAllNodesThatMatch(filter); //每次都是这里报内存溢出
for(Node node : nodelist.toNodeArray()){
if(node instanceof TableRow){
TableRow row=(TableRow)node;
TableColumn[] columns=row.getColumns();
if(columns[0].toPlainTextString().trim().startsWith(keyword)){
companyMan.add(columns[1].toPlainTextString().trim());
}
}
}
//拿到超链接进行递归
Parser parserlink=new Parser(url);
TagNameFilter linkfilter=new TagNameFilter("a");
NodeList linklist=parserlink.extractAllNodesThatMatch(linkfilter);
for(Node node : linklist.toNodeArray()){
LinkTag linktag=(LinkTag)node;
//递归
getRowBykeyword(linktag.getLink(),keyword); }
} catch (ParserException e) {
e.printStackTrace();
}
}
public static void main(String[] args) {
getRowBykeyword("http://china.alibaba.com/","公司地址");
}
}