當前位置:首頁 » 編程語言 » java解析html

java解析html

發布時間: 2022-12-29 07:00:20

Ⅰ 能用java相關技術解析Html頁面,批量獲取頁面內容對應的xpath嗎

  1. java中有解析html文檔的庫,直接網路或者google關鍵字:java html parser即可

  2. 不知道這些庫是否能夠獲取頁面元素對應的xpath值,這些庫,僅供參考。但我想,這些庫既然能夠解析html文檔,那麼他們就一定會用到xpath,如果他們將xpath相關api暴漏出來的話,就能夠實現你的功能啦。

Ⅱ java中解析html代碼提取字元串

packagetest;

publicclassJButtonTest
{
publicstaticvoidmain(String[]args)
{
Stringregex="[\s\S]+\<property\s+name[\='"]+label[^\>]+\>([^\<]+)\<\/property\>[\s\S]*";
Stringinput="<propertyname="name"> projectNo </property> <propertyname="property"> projectNo </property> <propertyname="label"> 項目編號 </property> <editor/>";
System.out.println(input.replaceAll(regex,"$1"));
}
}

Ⅲ java如何解析html文檔

importjava.io.*;
importjava.util.*;
importjavax.swing.text.*;
importjavax.swing.text.html.*;
importjavax.swing.text.html.parser.*;
importjavax.swing.text.html.HTMLEditorKit.ParserCallback;
{//繼承ParserCallback,解析結果驅動這些回調方法
protectedStringbase;
protectedbooleanisImg=false;
protectedbooleanisParagraph=false;
protectedstaticVector<String>element=newVector<String>();
=newString();
publicParser(){
}
(){
returnparagraphText;
}
publicvoidhandleComment(char[]data,intpos){
}
publicvoidhandleEndTag(HTML.Tagt,intpos){
if(t==HTML.Tag.P){
if(isParagraph){
isParagraph=false;
}
}elseif(t==HTML.Tag.IMG){
if(isImg){
isImg=false;
}
}
}
publicvoidhandleError(StringerrorMsg,intpos){
}
publicvoidhandleSimpleTag(HTML.Tagt,MutableAttributeSeta,intpos){
handleStartTag(t,a,pos);
}
publicvoidhandleStartTag(HTML.Tagt,MutableAttributeSeta,intpos){
if(t==HTML.Tag.P){
isParagraph=true;
}elseif((t==HTML.Tag.IMG)){
Stringsrc=(String)a.getAttribute(HTML.Attribute.SRC);
if(src!=null){
element.addElement(src);
isImg=true;
}
}
}
publicvoidhandleText(char[]data,intpos){
if(isParagraph){
StringtempParagraphText=newString(data);
if(paragraphText!=null){
element.addElement(tempParagraphText);
;
}
}
}

privatestaticvoidstartParse(StringsHtml){
try{
ParserDelegatorps=newParserDelegator();//負責每次在調用其parse方法時啟動一個新的DocumentParser
HTMLEditorKit.ParserCallbackparser=newParser();//解析結果驅動這些回調方法。
ps.parse(newStringReader(sHtml),parser,true);//解析給定的流並通過解析的結果驅動給定的回調。
//System.out.println(getParagraphText());
Vectorlink=element;
for(inti=0;i<link.size();i++){
System.out.println("----haha-----");
System.out.println(link.get(i));
}
}catch(Exceptione){
e.printStackTrace();
}
}
publicstaticvoidmain(Stringargs[]){
try{
Stringfilename="D://blogbaby.htm";
BufferedReaderbrd=newBufferedReader(newFileReader(filename));
char[]str=newchar[50000];
brd.read(str);
StringsHtml=newString(str);
startParse(sHtml);
}catch(Exceptione){
e.printStackTrace();
}
}
}

Ⅳ java解析html是jsoup還是htmlparse還是其他的什麼

用jsoup解析html或者htmlparse,不過比較難用,jsoup是jquery語法比較方便。

熱點內容
apache解析php7 發布:2025-07-03 06:47:34 瀏覽:893
壓縮mdb資料庫 發布:2025-07-03 06:47:30 瀏覽:351
王思聰當年30萬的電腦是什麼配置 發布:2025-07-03 06:47:27 瀏覽:630
androidndk的使用 發布:2025-07-03 06:41:45 瀏覽:344
網路音頻上傳 發布:2025-07-03 06:41:03 瀏覽:652
腳本真牛批 發布:2025-07-03 06:36:09 瀏覽:883
安卓平板連網路用不了怎麼辦 發布:2025-07-03 06:34:39 瀏覽:844
android微信支付1 發布:2025-07-03 06:28:52 瀏覽:89
美國災害導致存儲宕機 發布:2025-07-03 06:28:02 瀏覽:727
哪裡下載天使帝國4安卓 發布:2025-07-03 06:23:07 瀏覽:700