導航:首頁 > 編程語言 > java網頁解析

java網頁解析

發布時間:2023-03-02 22:40:16

java根據url抓取html頁面內容,怎麼解析chunked 方式

先獲取頁面
String html = getContent(url, Constants.ENCODING_UTF8);
解析頁面 Document doc=Jsoup.parse(html);
然後你獲取相應的標簽String tag =doc.getElementsByTag("title").first().text();
如果標簽很多不一樣你就得判斷了,還有看看有什麼相同的地方吧,我抓取網頁數據的時候最煩的就是格式不一樣的,好多標簽不一樣的,只能判斷,找到共同點,個別的單個處理,

⑵ java中幾種解析html的工具

HTML分析是一個比較復雜的工作,Java世界主要有幾款比較方便的分析工具:

1.Jsoup
Jsoup是一個集強大和便利於一體的HTML解析工具。它方便的地方是,可以用於支持用jQuery中css selector的方式選取元素,這對於熟悉js的開發者來說基本沒有學習成本。

String content = "blabla";
Document doc = JSoup.parse(content);
Elements links = doc.select("a[href]");

⑶ java中如何解析頁面傳入的url

public class CRequest {

/**
* 解析出url請求的路徑,包括頁面
* @param strURL url地址
* @return url路徑
*/
public static String UrlPage(String strURL)
{
String strPage=null;
String[] arrSplit=null;

strURL=strURL.trim().toLowerCase();

arrSplit=strURL.split("[?]");
if(strURL.length()>0)
{
if(arrSplit.length>1)
{
if(arrSplit[0]!=null)
{
strPage=arrSplit[0];
}
}
}

return strPage;
}
/**
* 去掉url中的路徑,留下請求參數部分
* @param strURL url地址
* @return url請求參數部分
*/
private static String TruncateUrlPage(String strURL)
{
String strAllParam=null;
String[] arrSplit=null;

strURL=strURL.trim().toLowerCase();

arrSplit=strURL.split("[?]");
if(strURL.length()>1)
{
if(arrSplit.length>1)
{
if(arrSplit[1]!=null)
{
strAllParam=arrSplit[1];
}
}
}

return strAllParam;
}
/**
* 解析出url參數中的鍵值對
* 如 "index.jsp?Action=del&id=123",解析出Action:del,id:123存入map中
* @param URL url地址
* @return url請求參數部分
*/
public static Map<String, String> URLRequest(String URL)
{
Map<String, String> mapRequest = new HashMap<String, String>();

String[] arrSplit=null;

String strUrlParam=TruncateUrlPage(URL);
if(strUrlParam==null)
{
return mapRequest;
}
//每個鍵值為一組
arrSplit=strUrlParam.split("[&]");
for(String strSplit:arrSplit)
{
String[] arrSplitEqual=null;
arrSplitEqual= strSplit.split("[=]");

//解析出鍵值
if(arrSplitEqual.length>1)
{
//正確解析
mapRequest.put(arrSplitEqual[0], arrSplitEqual[1]);

}
else
{
if(arrSplitEqual[0]!="")
{
//只有參數沒有值,不加入
mapRequest.put(arrSplitEqual[0], "");
}
}
}
return mapRequest;
}

}

public class TestCRequest {
/**用於測試CRequest類
* @param args
*/
public static void main(String[] args) {
// 請求url
String str = "index.jsp?Action=del&id=123&sort=";

//url頁面路徑
System.out.println(CRequest.UrlPage(str));

//url參數鍵值對
String strRequestKeyAndValues="";
Map<String, String> mapRequest = CRequest.URLRequest(str);

for(String strRequestKey: mapRequest.keySet()) {
String strRequestValue=mapRequest.get(strRequestKey);
strRequestKeyAndValues+="key:"+strRequestKey+",Value:"+strRequestValue+";";

}
System.out.println(strRequestKeyAndValues);

//獲取無效鍵時,輸出null
System.out.println(mapRequest.get("page"));
}
}

閱讀全文

與java網頁解析相關的資料

熱點內容
數控機床編程與操作課教學參考書 瀏覽:517
經典加密圖形 瀏覽:652
伺服器中的介質是什麼 瀏覽:628
java腐蝕演算法 瀏覽:847
php網址加密 瀏覽:782
無量之網pdf 瀏覽:42
舊手機刷安卓50需要做什麼 瀏覽:351
陳列的工具命令 瀏覽:487
單片機有時候有h有時候沒有h 瀏覽:496
androidndkpdf 瀏覽:549
dos打開程序命令 瀏覽:334
pptx轉pdf 瀏覽:723
輕量雲伺服器如何升級 瀏覽:835
電腦解壓文字看不懂怎麼回事 瀏覽:639
查看路由埠優先順序命令 瀏覽:233
華為怎麼把加密圖片取出來 瀏覽:829
會計准則講解pdf 瀏覽:320
程序員智商高情商低完整版 瀏覽:597
河南高清矩陣伺服器雲伺服器 瀏覽:191
電腦怎麼添加到伺服器地址 瀏覽:689