`

通过JAVA的API可以顺利的抓取网络上的大部分指定的网页内容

阅读更多
JAVA 抓取网页内容2011-01-06 16:43通过JAVA的API可以顺利的抓取网络上的大部分指定的网页内容,现与大家分享一下这方法理解与心得。最简单的一种抓取方法就是:

URL url = new URL(myurl);

BufferedReader br = new BufferedReader(newInputStreamReader(url.openStream()));

String s = "";

StringBuffer sb = new StringBuffer("");

while ((s = br.readLine()) != null) {

i++;

sb.append(s+"\r\n");

}

这种方法抓取一般的网页应该没有问题,但当有些网页中存在一些嵌套的redirect连接时,它就会报Server redirected too many times这样的错误,这是因为此网页内部又有一些代码是转向其它网页的,循环过多导致程序出错。如果只想抓取本URL中的网页内容,而不愿意让它有其它的网页跳转,可以用以下的代码。

URL urlmy = new URL(myurl);

HttpURLConnection con = (HttpURLConnection) urlmy.openConnection();

con.setFollowRedirects(true);

con.setInstanceFollowRedirects(false);

con.connect();

BufferedReader br = new BufferedReader(new InputStreamReader(con.getInputStream(),"UTF-8"));

String s = "";

StringBuffer sb = new StringBuffer("");

while ((s = br.readLine()) != null) {


sb.append(s+"\r\n");

}

这样的话,抓取的时候程序就不会跳换其它页面去抓取其它的内容了,这就达到我们的目的了。

如果是我们是处于内部网的话,还需要专门给它加上代理, Java以特殊的系统属性为代理服务器提供支持,只要在上面的程序加上以下程序就可以了。

System.getProperties().setProperty( "http.proxyHost", proxyName );

System.getProperties().setProperty( "http.proxyPort", port );

这样的话就可以实现处于内部网中而向互联网抓取自己想要的东西了。

上面的程序抓取回来的全部内容都存放在sb这个字符串,我们就可以通过正则表达式对它进行分析,提取出自己想要的具体的内容,为我所用,呵呵,这是多么美妙的一件事情啊!
 

 

分享到:
评论

相关推荐

    Java网络抓包 Java网络抓包

    Java网络抓包Java网络抓包Java网络抓包Java网络抓包Java网络抓包Java网络抓包Java网络抓包Java网络抓包Java网络抓包Java网络抓包Java网络抓包Java网络抓包Java网络抓包Java网络抓包Java网络抓包Java网络抓包Java网络...

    java简单抓取网页内容

    在Java编程语言中,抓取网页内容是一项常见的任务,尤其对于数据分析、信息提取以及网络爬虫等应用场景。本文将深入探讨如何使用Java实现简单的网页内容抓取,适合初学者入门学习。 首先,我们需要理解网页抓取的...

    java web网站常用抓取其他网站内容

    Java Web网站抓取其他网站内容是一项常见的技术需求,主要用于数据挖掘、信息聚合或者自动化测试等场景。本篇文章将深入探讨如何使用Java在Web环境中抓取其他网站的数据。 首先,我们需要了解的是网页抓取的基本...

    java实现网络抓包

    Java 实现网络抓包主要涉及网络通信协议的理解、数据包捕获与解析、以及HTTP协议的深入认识。在这个过程中,开发者通常会用到Java的Socket编程、数据流处理以及第三方库,如Jpcap或Wireshark的Java绑定库。 首先,...

    JAVA通过url获取网页内容

    "JAVA 通过 URL 获取网页内容" JAVA 通过 URL 获取网页内容是 Java 编程语言中的一种常见操作。通过使用 URL 类和 URLConnection 类,Java 程序可以连接到远程服务器,获取指定 URL 的内容。本文将详细介绍如何使用...

    Java实现网页抓取

    在这个Java实现网页抓取的项目中,我们将探讨如何利用Java编程语言来抓取网页内容。下面将详细介绍这个过程涉及的关键知识点。 1. **网络基础知识**:首先,理解HTTP协议是必要的,它是互联网上应用最广泛的一种...

    java网页抓取数据

    Java网页抓取数据是互联网数据挖掘的一个重要领域,它允许开发者通过编程方式获取网页上的信息,从而实现自动化分析、监控或构建智能应用。在Java中,我们通常使用HTTP客户端库和HTML解析工具来实现这一目标。本文将...

    java简单的抓取网页内容的程序

    java简单的抓取网页内容的程序java简单的抓取网页内容的程序java简单的抓取网页内容的程序java简单的抓取网页内容的程序java简单的抓取网页内容的程序java简单的抓取网页内容的程序java简单的抓取网页内容的程序java...

    java抓取任何指定网页的数据

    ### Java抓取任何指定网页的数据 #### 知识点概览 本文主要介绍如何使用Java技术来抓取任何指定网页的数据。重点在于介绍抓取网页数据的方法、解析数据的手段,以及具体实施过程中的关键步骤。 #### 抓取网页数据...

    基于JAVA技术的网页内容智能抓取.doc

    综上所述,基于JAVA技术的网页内容智能抓取系统具有良好的可扩展性和实用性,但需针对现有缺陷进行改进,如增加分页处理、提升配置灵活性、引入多线程、优化日志管理和增强错误处理能力,以提高系统的整体性能和用户...

    最新Java API文档(英文版)

    Java API文档是Java开发者不可或缺的重要参考资料,它详细记录了Java平台标准版(Java SE)的所有类、接口和方法。这份“最新Java API文档(英文版)”由SUN公司(现已被Oracle收购)提供,包含了Java开发的核心组件...

    基于Java+Jnetpcap的网络嗅探器(抓包程序)设计与实现

    【作品名称】:基于Java+Jnetpcap的网络嗅探器(抓包程序)设计与实现 【适用人群】:适用于希望学习不同技术领域的小白或进阶学习者。可作为毕设项目、课程设计、大作业、工程实训或初期项目立项。 【项目介绍】...

    Java抓取网页内容三种方式

    Java 抓取网页内容是指使用 Java 语言从互联网上抓取网页内容的过程。抓取网页内容是数据爬虫和网络爬虫的基础,它广泛应用于数据挖掘、信息检索、机器学习等领域。本文将介绍使用 Java 语言抓取网页内容的三种方式...

    java抓取网页内容源代码

    ### Java抓取网页内容源代码解析与扩展 在IT领域,网页抓取(或称网络爬虫)是一项关键技能,广泛应用于数据收集、市场分析、搜索引擎优化等多个方面。本篇文章将深入探讨一个Java编写的网页内容抓取代码,旨在帮助...

    java网络爬虫抓取网页数据

    Java网络爬虫是一种自动化程序,用于从互联网上抓取大量数据。它的工作原理是模拟浏览器发送HTTP请求到服务器,接收响应,并解析返回的HTML或XML文档以提取所需信息。在这个过程中,HttpClient是一个常用的Java库,...

    Java网页抓取数据

    Java网页抓取数据是互联网开发中的一个重要技能,它允许开发者从...`WebpageCaptureDemo`可能是一个示例项目,包含了上述部分或全部技术的应用,通过阅读和学习这个示例,可以更好地理解和掌握Java网页抓取的实际操作。

    java抓取网页数据

    网络爬虫(Web Crawler)是自动遍历互联网的程序,通过抓取网页内容并存储在本地,以供后续分析或建立索引。在网络爬虫的基本工作流程中,包括发起HTTP请求、解析HTML响应、提取所需数据以及可能的深度遍历等步骤。 ...

    Java天气应用程序 - 使用天气API获取实时天气数据并显示给用户

    总之,创建一个Java天气应用程序涉及网络通信、JSON解析、GUI编程等多个方面,是一个综合性的项目,可以帮助开发者巩固和提高Java编程技能。通过这个项目,你不仅可以了解如何与Web服务交互,还能学习到如何创建用户...

    java爬虫抓取网页内容,下载网站图片

    Java爬虫技术是一种用于自动化获取网页内容的程序,它能够模拟人类浏览器的行为,遍历互联网上的页面,提取所需的信息。在本场景中,我们将重点讨论如何利用Java编写爬虫来抓取网页内容并下载其中的图片。 首先,...

    Java抓取网页数据Demo

    在IT领域,网络数据抓取是一项重要的技能,特别是在大数据分析、搜索引擎优化和市场研究中。本文将详细讨论如何使用Java语言来抓取网页数据,包括两种主要方法:直接抓取原网页内容和处理网页中的JavaScript返回数据...

Global site tag (gtag.js) - Google Analytics