導航:首頁 > 編程語言 > java獲取網頁信息

java獲取網頁信息

發布時間:2023-05-15 23:43:52

1. 如何在java代碼中獲取頁面內容

import java.io.BufferedReader;
import java.io.DataInputStream;
import java.io.DataOutputStream;
import java.io.File;
import java.io.FileInputStream;
import java.io.FileNotFoundException;
import java.io.FileOutputStream;
import java.io.IOException;
import java.io.InputStreamReader;
import java.io.PrintWriter;
import java.net.HttpURLConnection;
import java.net.URL;public class Test
{
public static void main(String[] args) throws Exception
{
PrintWriter pw = new PrintWriter("d:\\test.xml");//d:\\test.xml是你的xml文件路徑
pw.println(getHtmlConentByUrl(" http://www..com"));// http://www..com是你蔽磨要訪問的頁面
pw.flush();
pw.close();
}

public static String getHtmlConentByUrl(
String ssourl) {
try {
URL url = new URL(ssourl);
HttpURLConnection con = (HttpURLConnection) url.openConnection();

con.setInstanceFollowRedirects(false);
con.setUseCaches(false);
con.setAllowUserInteraction(false);
con.connect(); StringBuffer sb = new StringBuffer();
String line = "";
BufferedReader URLinput = new BufferedReader(new InputStreamReader(con.getInputStream()));
while ((line = URLinput.readLine()) != null) {
sb.append(line);
}
con.disconnect();

return sb.toString().toLowerCase();
} catch (Exception e) {

return null;
}
}}
在獲取到的頁面攜並卜內容是字元串,這里解析有兩個辦法,一是通過dom4j把字元串轉化為dom進行解析,這辯穗樣最好,但是對方的頁面未必規范,符合dom結構。二是通過解析字元串過濾你想要的內容,該方法比較繁瑣,需要一些技巧。我有的就是二;

2. java讀取網站內容的兩種方法

HttpClient

利用apache的虛擬客戶端包獲取某個地址的內容 import java io UnsupportedEncodingException;

import java util HashSet;

import java util Iterator;

import java util Set;

import java util regex Matcher;

import java util regex Pattern;

import mons ;

import mons ;

import mons ;

public class catchMain {

/** *//**

* @param args

*/

隱握 public static void main(String[] args) {

String url = ;

String keyword= 食雀攜寬 ;

String response=createClient(url keyword);

}

public static String createClient(String url String param){

HttpClient client = new HttpClient();

String response=null;

String keyword=null;

PostMethod postMethod = new PostMethod(url);

try {

if(param!=null)

keyword = new String(param getBytes( gb ) ISO );

} catch (UnsupportedEncodingException e ) {

// TODO Auto generated catch block

e printStackTrace();

}

NameValuePair[] data = { new NameValuePair( keyword keyword) };

// 將表單的值放入postMethod中

postMethod setRequestBody(data);

try {

int statusCode = client executeMethod(postMethod);

頃亮 response = new String(postMethod getResponseBodyAsString()

getBytes( ISO ) GBK );

} catch (Exception e) {

e printStackTrace();

}

return response;

}

java自帶的HttpURLConnection

public static String getPageContent(String strUrl String strPostRequest

int maxLength) {

//讀取結果網頁

StringBuffer buffer = new StringBuffer();

System setProperty( client defaultConnectTimeout );

System setProperty( client defaultReadTimeout );

try {

URL newUrl = new URL(strUrl);

HttpURLConnection hConnect = (HttpURLConnection) newUrl

openConnection();

//POST方式的額外數據

if (strPostRequest length() > ) {

hConnect setDoOutput(true);

OutputStreamWriter out = new OutputStreamWriter(hConnect

getOutputStream());

out write(strPostRequest);

out flush();

out close();

}

//讀取內容

BufferedReader rd = new BufferedReader(new InputStreamReader(

hConnect getInputStream()));

int ch;

for (int length = ; (ch = rd read()) >

&& (maxLength <= || length < maxLength); length++)

buffer append((char) ch);

rd close();

hConnect disconnect();

return buffer toString() trim();

} catch (Exception e) {

// return 錯誤:讀取網頁失敗! ;

return null;

}

lishixin/Article/program/Java/hx/201311/26339

3. 如何 用Java語言獲得網頁數據

你這個是不是A系統想了解B系統的頁面信息?

如果是這樣存在一個問題比較難解決,版就是數據源問題,權你A系統並不知道B系統的數據。

如果要獲取招聘信息的公司名稱,有幾個思路
1、A系統做一個iframe,這個iframe裡面嵌入你要訪問的URL,然後你通過js,獲取這個iframe標簽裡面的所有內容,這樣數據源就解決了
2、你可以做一個瀏覽器插件,這個插件的功能就是獲取當前訪問頁面的所有字元數據,獲取到數據後將數據發送到A系統
3、對網頁進行截圖,然後通過OCR軟體獲取圖片中的文字,並將文字保存成文本,A系統讀取這個文本信息,數據源問題也可以解決

以上上個只是我臨時想到的,可能還可以運用JAVA的全文檢索框架試試看,因為沒有用過這個框架所以不知道是否能夠實現

獲取到數據源後,接下來就是業務處理了,業務處理就看具體業務進行處理就行了,技術方面就是一個文字處理的功能,技術好實現,業務比較復雜

4. java網頁獲取

StringBuffer用之前拍褲要初始化,eg:襲缺簡StringBuffer sb = new StringBuffer();
StringBuffer document=new StringBuffer();
String line; /扮逗/ 讀入網頁信息

while ((line = reader.readLine()) != null){
document.append(line+"\n");
}
String title = document.toString();
title = title.substring(title.indexOf("<title>") + 7,
title.indexOf("</title>"));
System.out.println(title);

5. java語言獲取網頁標簽中的內容

新浪的那個天氣的值是通過js動態載入的,原始html頁面是<div id="SI_Weather_Wrap" class="now-wea-wrap clearfix"></div> 。
而jsoup只是對html進行解析,所回以是找不到js動態生成的哪答些信息的。

6. 如何通過Java代碼實現對網頁數據進行指定抓取

通過Java代碼實現對網頁數據進行指定抓取方法步驟如下:
1在工程中導入Jsoup.jar包

2獲取網址url指定HTML或者文檔指定的body

3獲取網頁中超鏈接的標題和鏈接

4獲取指定博客文章的內容

5獲取網頁中超鏈接的標題和鏈接的結果

7. 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(); } }

8. java如何獲取網頁中的文字

如果要獲取表單的內容,
<from>
<input type="text" name= "username" value=""/>
</from>
request.getparameter("username");

如果是獲取網頁內容,估計是要獲版取url,從頭到尾爬了權

閱讀全文

與java獲取網頁信息相關的資料

熱點內容
怎麼他么怎麼又網路了 瀏覽:649
java會出現內存泄露么 瀏覽:617
蘋果4s鎖屏後怎麼還顯示歌曲 瀏覽:207
鴻蒙系統文件管理哪些可以刪除 瀏覽:550
ubuntuqt創建工程沒有配置文件 瀏覽:126
網站登錄變成其他網站怎麼處理 瀏覽:202
ug數控編程學校有哪些 瀏覽:203
java圖片上傳顯示 瀏覽:402
ppt的文件名後綴 瀏覽:902
ug編程軟體下載到哪個盤 瀏覽:359
炫酷字體APP下載的文件在哪裡 瀏覽:668
廊坊哪裡有少兒編程機構 瀏覽:312
cad新文件能找回來嗎 瀏覽:951
導出手機qq文件到u盤 瀏覽:456
電腦如何打開ppt文件怎麼打開方式 瀏覽:782
魅族鎖定區文件夾 瀏覽:357
刻字cnc怎麼編程 瀏覽:182
學校的網路拓撲結構圖 瀏覽:784
收集100個pdf文件里關鍵詞 瀏覽:594
蘋果關閉4g網路設置 瀏覽:289

友情鏈接