lucene-使用htmlparser提取网页特定链接
2009-12-23 17:06
357 查看
1、以EMAIL为例:(以这个网页为例http://www.qunar.com/site/zh/Cooperate_4.shtml)
package extract;
import org.htmlparser.Node;
import org.htmlparser.NodeFilter;
import org.htmlparser.Parser;
import org.htmlparser.filters.NodeClassFilter;
import org.htmlparser.tags.LinkTag;
import org.htmlparser.util.NodeIterator;
import org.htmlparser.util.NodeList;
import org.htmlparser.util.ParserException;
public class extracthtmllinkemail {
/**
* @param args
*/
public static String getText(String f){
StringBuffer sb=new StringBuffer();
try {
Parser parser=new Parser(f);
parser.setEncoding("UTF-8");
NodeFilter filter=new NodeClassFilter(){
public boolean accept(Node node){
return (LinkTag.class.isAssignableFrom(node.getClass())&&((LinkTag)node).isMailLink());
}
};
NodeList links=new NodeList();
for (NodeIterator e=parser.elements();e.hasMoreNodes();){
e.nextNode().collectInto(links, filter);
}
for (int i=0;i<links.size();i++){
LinkTag linktag=(LinkTag)links.elementAt(i);
sb.append("/n|"+linktag.getLinkText()+"|=>"+linktag.getLink());
}
} catch (ParserException e) {
// TODO Auto-generated catch block
e.printStackTrace();
}
return sb.toString();
}
public static void main(String[] args) {
// TODO Auto-generated method stub
String s=getText("./htmls/Qunar_com.htm");
System.out.print(s);
}
}
效果如下:
|Adservice@qunar.com|=>adservice@qunar.com
|adservice@qunar.com|=>adservice@qunar.com
2、以(www.hao123.com)为例,提取js链接
代码
package extract;
import org.htmlparser.Node;
import org.htmlparser.NodeFilter;
import org.htmlparser.Parser;
import org.htmlparser.filters.NodeClassFilter;
import org.htmlparser.tags.LinkTag;
import org.htmlparser.util.NodeIterator;
import org.htmlparser.util.NodeList;
import org.htmlparser.util.ParserException;
public class extracthtmllinkemail {
/**
* @param args
*/
public static String getText(String f){
StringBuffer sb=new StringBuffer();
try {
Parser parser=new Parser(f);
parser.setEncoding("GB2312");
NodeFilter filter=new NodeClassFilter(){
public boolean accept(Node node){
return (LinkTag.class.isAssignableFrom(node.getClass())&&((LinkTag)node).isJavascriptLink());
}
};
NodeList links=new NodeList();
for (NodeIterator e=parser.elements();e.hasMoreNodes();){
e.nextNode().collectInto(links, filter);
}
for (int i=0;i<links.size();i++){
LinkTag linktag=(LinkTag)links.elementAt(i);
sb.append("/n|"+linktag.getLinkText()+"|=>"+linktag.getLink());
}
} catch (ParserException e) {
// TODO Auto-generated catch block
e.printStackTrace();
}
return sb.toString();
}
public static void main(String[] args) {
// TODO Auto-generated method stub
String s=getText("./htmls/hao123.htm");
System.out.print(s);
}
}
效果如下:
|我的hao123|=>void(0);
|我喜欢的网站:|=>void(0)
|我定制的网站:|=>void(0)
package extract;
import org.htmlparser.Node;
import org.htmlparser.NodeFilter;
import org.htmlparser.Parser;
import org.htmlparser.filters.NodeClassFilter;
import org.htmlparser.tags.LinkTag;
import org.htmlparser.util.NodeIterator;
import org.htmlparser.util.NodeList;
import org.htmlparser.util.ParserException;
public class extracthtmllinkemail {
/**
* @param args
*/
public static String getText(String f){
StringBuffer sb=new StringBuffer();
try {
Parser parser=new Parser(f);
parser.setEncoding("UTF-8");
NodeFilter filter=new NodeClassFilter(){
public boolean accept(Node node){
return (LinkTag.class.isAssignableFrom(node.getClass())&&((LinkTag)node).isMailLink());
}
};
NodeList links=new NodeList();
for (NodeIterator e=parser.elements();e.hasMoreNodes();){
e.nextNode().collectInto(links, filter);
}
for (int i=0;i<links.size();i++){
LinkTag linktag=(LinkTag)links.elementAt(i);
sb.append("/n|"+linktag.getLinkText()+"|=>"+linktag.getLink());
}
} catch (ParserException e) {
// TODO Auto-generated catch block
e.printStackTrace();
}
return sb.toString();
}
public static void main(String[] args) {
// TODO Auto-generated method stub
String s=getText("./htmls/Qunar_com.htm");
System.out.print(s);
}
}
效果如下:
|Adservice@qunar.com|=>adservice@qunar.com
|adservice@qunar.com|=>adservice@qunar.com
2、以(www.hao123.com)为例,提取js链接
代码
package extract;
import org.htmlparser.Node;
import org.htmlparser.NodeFilter;
import org.htmlparser.Parser;
import org.htmlparser.filters.NodeClassFilter;
import org.htmlparser.tags.LinkTag;
import org.htmlparser.util.NodeIterator;
import org.htmlparser.util.NodeList;
import org.htmlparser.util.ParserException;
public class extracthtmllinkemail {
/**
* @param args
*/
public static String getText(String f){
StringBuffer sb=new StringBuffer();
try {
Parser parser=new Parser(f);
parser.setEncoding("GB2312");
NodeFilter filter=new NodeClassFilter(){
public boolean accept(Node node){
return (LinkTag.class.isAssignableFrom(node.getClass())&&((LinkTag)node).isJavascriptLink());
}
};
NodeList links=new NodeList();
for (NodeIterator e=parser.elements();e.hasMoreNodes();){
e.nextNode().collectInto(links, filter);
}
for (int i=0;i<links.size();i++){
LinkTag linktag=(LinkTag)links.elementAt(i);
sb.append("/n|"+linktag.getLinkText()+"|=>"+linktag.getLink());
}
} catch (ParserException e) {
// TODO Auto-generated catch block
e.printStackTrace();
}
return sb.toString();
}
public static void main(String[] args) {
// TODO Auto-generated method stub
String s=getText("./htmls/hao123.htm");
System.out.print(s);
}
}
效果如下:
|我的hao123|=>void(0);
|我喜欢的网站:|=>void(0)
|我定制的网站:|=>void(0)
相关文章推荐
- LUCENE-使用htmlparser提取网页所有链接
- lucene-使用htmlparser提取网页普通链接
- 使用Python中的HTMLParser、cookielib抓取和解析网页、从HTML文档中提取链接、图像、文本、Cookies .
- 【搜索引擎Jediael开发笔记3】使用HtmlParser提取网页中的链接 分类: H3_NUTCH 2014-05-20 20:50 1211人阅读 评论(0) 收藏
- 【搜索引擎Jediael开发笔记3】使用HtmlParser提取网页中的链接
- 黄聪:使用Python中的HTMLParser、cookielib抓取和解析网页、从HTML文档中提取链接、图像、文本、Cookies(二)
- 【python】使用HTMLParser、cookielib抓取和解析网页、从HTML文档中提取链接、图像、文本、Cookies
- 使用HtmlParser提取网页中的链接
- 【搜索引擎Jediael开发笔记3】使用HtmlParser提取网页中的链接
- 使用Python中的HTMLParser、cookielib抓取和解析网页、从HTML文档中提取链接、图像、文本、Cookies
- 【搜索引擎Jediael开发笔记3】使用HtmlParser提取网页中的链接
- 【搜索引擎Jediael开发笔记3】使用HtmlParser提取网页中的链接
- 使用Python中的HTMLParser、cookielib抓取和解析网页、从HTML文档中提取链接、图像、文本、Cookies(二)(转)
- 使用Python中的HTMLParser、cookielib抓取和解析网页、从HTML文档中提取链接、图像、文本、Cookies(二)
- 黄聪:使用Python中的HTMLParser、cookielib抓取和解析网页、从HTML文档中提取链接、图像、文本、Cookies(二)
- 【搜索引擎Jediael开发笔记3】使用HtmlParser提取网页中的链接
- java使用htmlparser提取网页纯文本例子
- 使用htmlparser抓取网页链接
- 基础算法7:使用正则提取网页中a标签的链接和标题
- 使用htmlparser爬虫技术爬取电影网页的全部下载链接