日期:2014-05-17  浏览次数:20640 次

如何获取页面上所有超链接地址......求高手!
HTML code

<%@ page language="java" pageEncoding="GBK"%>
<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN">
<html>
<head>
<title>超链接测试页面</title>
<script language="javascript">
function test1() {
    var para = 1;
    window.location.href = "aaa.do?para="+para;
}
function test2() {
    var para = document.getElementById("para").value;
    form1.action = "bbb.do?para="+para;
    form1.submit();
}
</script>
</head>
<body>
<a onclick="test1()">1111111111111111111111111111</a>
<a onclick="test2()">2222222222222222222222222222</a>
<a href="ccc.do?para=3">3333333333333333333333333</a>
<form name="form1">
    <input type="text" id="para" value="2">
</form>
</body>
</html>



如上所示:我要获取页面上所有超链接地址:
aaa.do?para=1
bbb.do?para=2
ccc.do?para=3

我搜了两天百度和谷歌,找到的全是获取静态超链接ccc.do?para=3的方法,前面两种无法实现,求高人指点迷津...

------解决方案--------------------
如果你想使用javascript拿到网页的a标签的话:可以使用document.getElementByTag("a"),返回一个数组,但是这个方法无法拿到js脚本中的连接跳转;如果你要通过java解析html拿到a标签的话,我建议你使用htmlParser这个jar包中的方法,使用过滤器来进行筛选!