获取HTML网页的所有图片的url

程皓轩
2023-12-01

主要使用了HtmlParser类解决问题。

必须导入htmlparser.jar包,读者可从网上自行下载。

下面直接贴上源码:

	public NodeList parser(String url) throws ParserException{  
		
        /**根据Url创建parser对象**/  
        Parser parser =  new Parser(url);  
         
        /**设置编码,必须与Url编码一样 **/  
        parser.setEncoding("utf-8");  
         
        /** 构建一个Html页面对象 **/  
        HtmlPage htmlPage = new HtmlPage(parser);  
        parser.visitAllNodesWith(htmlPage);  
         
        /** 获取Body下面所有的节点,可以想象成类似树状结构 **/  
        NodeList list = htmlPage.getBody();  
         
        /** 建立一个Filter,用于过滤节点,此处获得形如“<img></img>”这样的节点 **/  
        NodeFilter filter = new TagNameFilter("IMG");  
         
        /** 得到过滤后的节点 **/  
        list = list.extractAllNodesThatMatch(filter, true);  
         
        for(int c =0; c < list.size(); c ++){  
        		ImageTag imageTag=(ImageTag)list.elementAt(c);
        		/** 输出图片的链接Url **/
        		System.out.println(imageTag.getImageURL());
        }  
        return list;  
    }  
     
    public static void main(String[] args) throws ParserException {  
    	Demo demo = new Demo();  
    	demo.parser("http://www.163.com");
    } 

输出结果就是一堆图片的链接了。

 类似资料: