① 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>