① java获取html
Java访问网络url,获取网页的html代码
方式一:
一是使用URL类的openStream()方法:
openStream()方法与制定的URL建立连接并返回InputStream类的对象,以从这一连接中读取数据;
openStream()方法只能读取网络资源。
二是使用URL类的openConnection()方法:
openConnection()方法会创建一个URLConnection类的对象,此对象在本地机和URL指定的远程节点建立一条HTTP协议的数据通道,可进行双向数据传输。类URLConnection提供了很多设置和获取连接参数的方法,最常用到的是getInputStream()和getOutputStream()方法。
openConnection()方法既能读取又能发送数据。
列如:
public static void main(String args[]) throws Exception {
try {
//输入url路径
URL url = new URL("url路径"); InputStream in =url.openStream(); InputStreamReader isr = new InputStreamReader(in); BufferedReader bufr = new BufferedReader(isr); String str; while ((str = bufr.readLine()) != null) { System.out.println(str); } bufr.close(); isr.close(); in.close(); } catch (Exception e) { e.printStackTrace(); } }
② java如何读取html页面的表单
额,1楼在误导LZ,楼主根本没学过struts,所以就别再让他使用ActionForm啦!而且用ActionForm的话,还得回自己去建form的po,很麻烦。答 还有2楼的朋友,你看看他贴出来到代码,他用的是struts1而不是struts2,所以不会有那些属性的get和set方法了。
你要取得表单的值,直接在execute方法里面用request.getParameter()这个方法去取就行了,比如:
String userName = requestgetParameter("userName");
后面的那个userName是页面表单组件里面的name属性,比如:
<input type="text" name="userName" size="30" />
其它的值都是以此类推的。 在Java中取得form表单里的值是很简单的,只是你不熟悉而已,熟悉了就知道了。 希望对你能有所帮助!
③ 如何使用java的正则表达式提取html标签
你的意思是不是用Java访问一个链接,在返回的数据中提取出放在标签中的数据,例如取出<img src=""/>这些标签中的数据
④ java获取html内的内容
简单实现:
HtmlRequest类的内容:
[java] view plain
package com.capinfotech.net;
import java.io.ByteArrayOutputStream;
import java.io.IOException;
import java.io.InputStream;
import java.net.HttpURLConnection;
import java.net.URL;
public class HtmlRequest {
public static void main(String[] args) throws IOException {
URL url = new URL("http://www.163.com/");
HttpURLConnection conn = (HttpURLConnection)url.openConnection();
InputStream inputStream = conn.getInputStream(); //通过输入流获得网站数据
byte[] getData = readInputStream(inputStream); //获得网站的二进制数据
String data = new String(getData, "gb2312");
System.out.println(data);
}
public static byte[] readInputStream(InputStream inputStream) throws IOException {
byte[] buffer = new byte[1024];
int len = 0;
ByteArrayOutputStream bos = new ByteArrayOutputStream();
while((len = inputStream.read(buffer)) != -1) {
bos.write(buffer, 0, len);
}
bos.close();
return bos.toByteArray();
}
}
这样就能获得http://www.163.com的内容,在控制台会打印输出
⑤ java 打开 本地.html
用Java写一个能解释html语句的程序,写个窗口把它显示出来。
这意思就是,用Java写个浏览器。
哪怕是专简单打开文属本文档,你想要图形窗口程序显示出来的话,你也得自己写,具体怎么个窗口,文字怎么显示,字体,颜色,背景你自己写,除非你直接控制台标准输出。
读html的话,布局,字体等等都写在html里了,你得写个能解释的程序。
或者调用别的浏览器打开网页。 不过没啥意义。
⑥ java怎样读取html文件
java可以使用jsoup、htmlparser等工具进行html的读取和解析,以下是详细说明:
1、jsoup 是一款 Java 的HTML 解析器,可直接解析某个URL地址、HTML文本内容。它提供了一套非常省力的API,可通过DOM,CSS以及类似于JQuery的操作方法来取出和操作数据。据说它是基于MIT协议发布的。
jsoup的主要功能如下:
从一个URL,文件或字符串中解析HTML;
使用DOM或CSS选择器来查找、取出数据;
可操作HTML元素、属性、文本;
示例代码:
Document doc = Jsoup.parse(input, "UTF-8", "http://www.dangdang.com");
Element content = doc.getElementById("content");
Elements links = content.getElementsByTag("a");
for (Element link : links) {
String linkHref = link.attr("href");
String linkText = link.text();
}
2、htmlparser是一个纯的java写的html解析的库,它不依赖于其它的java库文件,主要用于改造或提取html。它能超高速解析html,而且不会出错。现在htmlparser最新版本为2.0。据说htmlparser就是目前最好的html解析和分析的工具。无论你是想抓取网页数据还是改造html的内容,用了htmlparser绝对会忍不住称赞。
在线文档: http://www.osctools.net/apidocs/apidoc?api=HTMLParser;http://htmlparser.sourceforge.net/project-info.html
示例代码:
Parser parser = new Parser ("http://www.dangdang.com");
NodeList list = parser.parse (null);
Node node = list.elementAt (0);
NodeList sublist = node.getChildren ();
System.out.println (sublist.size ());
⑦ java打开html文件
你的意思是用java代码模拟访问一个html网页? 可以用URLConnection
URL url = new URL("你的html文件的http地址");
URLConnection URLconnection = url.openConnection();
HttpURLConnection httpConnection = (HttpURLConnection) URLconnection;
InputStream urlStream = httpConnection.getInputStream();
另外如果html里有js的话 是不能模拟访问js的
⑧ java web项目,从本地磁盘比如读取一个HTML页面然后再原样显示在jsp页面中的一个指定的区域
不是抄显示在JSP页面中吗,直接用袭include指令不行吗。。。
没看到点击一个超链接,你是说用本地的一个HTML更新当前页面的一部分吗?
可以用AJAX或者iframe
iframe的话:
<iframe name="update" style="boder:0px"></iframe>
<!--你要的超链接-->
<a href="本地HTML.html" target="update" >更新部分页面</a>