爬行动物的本质是打开web源代码进行匹配检索,得到检索结果。
/*
*取得
*将正规规则封装为对象。
*patternp=pattern.compile(a*b );
//通过正则对象的matcher方法字符串进行关联。 获取处理字符串的匹配者对象Matcher。
*matcherm=p.matcher(aaaab );
在Matcher匹配器对象的方法中处理字符串。
* boolean b=m.matches (;
*/
package com.js.ai.modules.point wall.test xfz;
import java.io.BufferedReader;
import java.io.FileReader;
import java.io.IOException;
import Java.io.input streamreader;
import Java.net.malformedurlexception;
import java.net.URL;
import java.util.ArrayList;
import java.util.List;
import java.util.regex.Matcher;
import java.util.regex.Pattern;
公共类spider {
公共静态列表获取工具() throws IOException{ )。
//1,读取源文件。
URL URL=newurl (http://www.cn blogs.com/Renyi-fan/p/6896901.html );
bufferedreaderbufr=newbufferedreader (newinputstreamreader (URL.open stream () );
//2,对读取的数据进行规则的匹配。 从那里获取符合规则的数据。
stringmail_regex='\w@w((.w ) ) (w );
列表列表=new ArrayList (;
patternp=pattern.com pile (mail _ regex );
字符串行=null;
wile((line=bufr.readline ) )!=空) {
matcherm=p.matcher(line;
wile(m.find ) ) }
//3,将符合规则的数据保存到收藏中。
list.add(m.group ) );
}
}
返回列表;
}
公共静态列表getmails () throws IOException{ )。
//1,读取源文件。
bufferedreaderbufr=newbufferedreader (new filereader (' c :\ mail.html ) );
//2,对读取的数据进行规则的匹配。 从那里获取符合规则的数据。
stringmail_regex='\w@w((.w ) ) (w );
列表列表=new ArrayList (;
patternp=pattern.com pile (mail _ regex );
字符串行=null;
wile((line=bufr.readline ) )!=空) {
matcherm=p.matcher(line;
wile(m.find () ) ) ) ) ) )。
//3,将符合规则的数据保存到收藏中。
list.add(m.group ) );
}
}
返回列表;
}
publicstaticvoidmain (字符串[ ] args ) throws IOException { )。
//List list=getMails (;
//for (字符串邮件:列表) {
//system.out.println(mail );
//}
列表列表=getmailsbyweb (;
for (字符串邮件:列表) {
system.out.println (邮件;
}
}
}