请问如何用htmlparser得到某网页中所有的邮箱地址 ?
解决方案 »
- finalize()方法的使用问题
- Java中,关于return关键字的实行原理有所疑问
- 日文数据生成xml文件,用ie打不开,编码是UTF-8,为什么呀?代码如下
- 我这个pressok按钮应加到哪个循环呢?
- java scanner 文本写入
- 如何在eclipse里面运行JList[100分]
- 求助!怎样安装LOG4J
- 如何用java编写flash播放器(或者调用flashplayer6installer.exe,它是不能自动搜寻文件的)
- 正则表达式的使用
- 一个有关GUI界面的问题,求高手帮忙解答 感激不尽
- 又见JIT,Just-in-time。我想提高速度。把JAVA代码直接编译成机器码
- 利用java开发系统时,有没有方法可以分成两种?就是一种是调试代码,另外一种是发布代码
/*
* @brief: 得到某个网页中所有的邮箱地址
* @param: 网页的url
*/
public void getEmails( String url )
{
System.out.println(url+"中的邮箱:");
try {
Parser parser = new Parser();
parser.setURL(url.toString());
parser.setEncoding(parser.getEncoding());
for (NodeIterator i = parser.elements (); i.hasMoreNodes(); )
{
Node node = i.nextNode();
String linkText = node.toString();
Pattern p=Pattern.compile("[\\w[.-]]+@[\\w[.-]]+\\.[\\w]+");//使用正则表达式验证字符格式编译
Matcher m=p.matcher(linkText);
while(m.find()){
String email = m.group();
System.out.println(email);
pushEmail(email);
}
}
}
catch (Exception e) {
// TODO: handle exception
}
}
public void get(String text){
String regEx = "\\w+([-+.]\\w+)*@\\w+([-.]\\w+)*\\.\\w+([-.]\\w+)*";
Pattern p = Pattern.compile(regEx);
Matcher m = p.matcher(text);
int i = 0;
while(m.find()){
i++;
String ss = m.group();
System.out.println(ss);
}
System.out.println(i);
}
public String getText(String url) {
StringBuffer sb = new StringBuffer("");
try {
URL u = new URL(url);
BufferedReader br = new BufferedReader(new InputStreamReader(u
.openStream()));
String s = "";
while ((s = br.readLine()) != null) {
sb.append(s);
}
} catch (IOException e) {
// TODO Auto-generated catch block
e.printStackTrace();
}
return sb.toString();
}