在工作中要通java获取整个网页的html内容,或者某个网络文件的内容。这里我们可以使用java提供的HttpURLConnection类来实现对网页内容的抓取。
抓取爱图网www.iitu.net首页的内容, 在代码中我们将百度首页的内容存储到了一个byte数组中,当然我们有了 IO流以后还可以存储到文件中去了。
- URL url = new URL("http://www.iitu.net");
- HttpURLConnection urlCon=(HttpURLConnection)url.openConnection();
- urlCon.setConnectTimeout(50000);
- urlCon.setReadTimeout(300000);
- DataInputStream fIn;
- byte[] content = new byte[MAX_FILE_SIZE];
- fIn = new DataInputStream(urlCon.getInputStream());
- int size = 0,f_size = 0;
- while((size = fIn.read(content,f_size,2048))> 0){
- f_size += size;
- }
java实现从网页上抓取数据后写入本地库,我用的是DOM文档对象模型来抓取数据的,数据已经取到,我想把他写入文本文件不知道怎么实现?还有就是分析结构化数据写入数据库该怎么来实现才好?
将DOM文档转化成XML文件
- // 获得将DOM文档转化为XML文件的转换器,有类TransformerFactory
- // 来实现,类Transformer实现转化API。
- TransformerFactory tfactory = TransformerFactory.newInstance();
- Transformer transformer = tfactory.newTransformer();
- // 将DOM对象转化为DOMSource类对象,该对象表现为转化成别的表达形式的信息容器。
- DOMSource source = new DOMSource(document);
- // 获得一个StreamResult类对象,该对象是DOM文档转化成的其他形式的文档的容器,可以是XML文件,文本文件,HTML文件。这里为一个XML文件。
- StreamResult result = new StreamResult(new File(“text.xml”));
- // 调用API,将DOM文档转化成XML文件。
- transformer.transform(source,result);
相关推荐
java HttpURLConnection示例 HttpURLConnection工具
主要介绍了JAVA通过HttpURLConnection 上传和下载文件的方法,非常具有实用价值,需要的朋友可以参考下
jsoup是一个Java HTML Parser。能够从URL、文件或字符串解析HTML。利用DOM traversal或CSS selectors查找和抽取数据。能够操作HTML元素,属性和文本。能够依据一个白名单过滤用户提交的内容。
用于对基于HTTP的服务进行抓取 HttpClient 现在是HttpComponents 把问题搞复杂了 其实Java内置的HttpURLConnection很好的 内含文档 使用方法见http: blog csdn net jdgdf566 article details 16357677
本人原创测试了百度,搜狗,360搜索都可以获取重定向后的真实地址,直接运行就可以,也可以根据自己项目具体修改功能。java使用HttpURLConnection获取百度搜狗360搜索链接重定向真实目标链接地址url。
Java自带的HttpURLConnection访问接口文件上传, 含普通参数值传递和文件传递
本例子是 java 的 HttpURLConnection 使用方法,比较简单,但是涵盖了post和get两种方法,而且处理了乱码。
主要介绍了Java HttpURLConnection超时和IO异常处理的相关资料,需要的朋友可以参考下
用于对基于HTTP的服务进行抓取 HttpClient 现在是HttpComponents 把问题搞复杂了 其实Java内置的HttpURLConnection很好的 内含文档 使用方法见http://blog.csdn.net/jdgdf566/article/details/17039693
主要介绍了java后台调用HttpURLConnection类模拟浏览器请求实例,该实例可用于接口调用,具有一定的实用价值,需要的朋友可以参考下
用于对基于HTTP的服务进行抓取 HttpClient 现在是HttpComponents 把问题搞复杂了 其实Java内置的HttpURLConnection很好的 内含文档 使用方法见http://blog.csdn.net/jdgdf566/article/details/17039693
java网络请求工具类 HttpURLConnection post请求工具类HttpURLConnection httpURLConnection = (HttpURLConnection) url .openConnection(); httpURLConnection.setRequestMethod("POST");// 提交模式
import java.net.HttpURLConnection; import java.net.MalformedURLException; import java.net.URL; import java.util.List; import java.util.Map; public class HttpTest { private HttpURLConnection hc = ...
HttpURLConnection文件下载\httpURLConnection文件下载
测试网页 用于基于Java HttpURLConnection类测试https代理设置的Java代码。 该代码实际上可以连接到任何URL,但仅响应https.proxyUser和https.ProxyPassword系统属性。 用法: $ java <java> -jar testwebpage.jar ...
java实现多次HttpURLConnection共享session,发送两次请求共享同一个session,这样做爬虫的时候就可以爬网站登录后能看到的内容了
主要介绍了java HttpURLConnection 发送文件和字符串信息的相关资料,需要的朋友可以参考下
Java 实现 客户端 HttpURLConnection 用于进行web服务器测试的http客户端
HttpURLConnection访问网页下载图片示例代码,参见博文;http://blog.csdn.net/yanzi1225627/article/details/22222735
使用jsoup做的java爬虫, 登录自己的天眼查账号, 爬取公司详细数. 不足: 大概执行100次请求之后会被识别为机器人.