我要抓取一个网站的内容,这个网站分页机制是用js的。具体如下:
[size=10px]
html code下一页
jscript code var pageno=1; function gogage(pno){ tbl.firstpage(); pageno=1; for(var i=1; (i
html code
请高手赐教!
------解决方案--------------------
帮忙顶!
------解决方案--------------------
把html页取下来,数据在#xmldso指定的位置,也取下来,就是全部内容了。和分页关系不大.
------解决方案--------------------
帮顶!
------解决方案--------------------
利用htmlparser抓取网页内容(一)
import org.htmlparser.node;
import org.htmlparser.nodefilter;
import org.htmlparser.parser;
import org.htmlparser.filters.tagnamefilter;
import org.htmlparser.tags.tabletag;
import org.htmlparser.util.nodelist;
/**
*
* 标题:
* 功能概要:
* 版权: cityyouth.cn (c) 2005
* 公司:上海城市青年网
* 创建时间:2005-12-21
* 修改时间:
* 修改原因:
*
* @author 张伟
* @version 1.0
*/
public class testyahoo {
public static void testhtml() {
try {
string scurrentline;
string stotalstring;
scurrentline = ;
stotalstring = ;
java.io.inputstream l_urlstream;
java.net.url l_url = new java.net.url(
http://sports.sina.com.cn/iframe/nba/live/);
java.net.httpurlconnection l_connection = (java.net.httpurlconnection) l_url
.openconnection();
l_connection.connect();
l_urlstream = l_connection.getinputstream();
java.io.bufferedreader l_reader = new java.io.bufferedreader(
new java.io.inputstreamreader(l_urlstream));
while ((scurrentline = l_reader.readline()) != null) {
stotalstring += scurrentline;
}
system.out.println(stotalstring);
system.out.println(====================);
string testtext = extracttext(stotalstring);
system.out.println(testtext);
} catch (exception e) {
e.printstacktrace();
}
}
/**
* 抽取纯文本信息
*
* @param inputhtml
* @return
*/
public static string extracttext(string inputhtml) throws exception {
stringbuffer text = new stringbuffer();
parser parser = parser.createparser(new string(inputhtml.getbytes(),
8859_1), 8859-1);
// 遍历所有的节点
nodelist nodes = parser.extractallnodesthatmatch(new nodefilter() {
public boolean accept(node node) {
return true;
