熱點推薦:
您现在的位置: 電腦知識網 >> 編程 >> Java編程 >> Java核心技術 >> 正文

HTML Parser學習 整理常用的解析代碼

2013-11-23 19:32:27  來源: Java核心技術 

  獲取指定URL地址下面的全部的<>標簽名稱

  private void visitorFunction() {

  try {

  Parser parser = new Parser();

  parsersetURL(); parsersetEncoding(parsergetEncoding());

  NodeVisitor visitor = new NodeVisitor(){

  public void visitTag(Tag tag) {

  Systemoutprint(tag name is:+taggetTagName()+\n class is:+taggetClass());

  }

  };

  parservisitAllNodesWith(visitor);

  }catch (Exception e) {

  // TODO: handle exception

  }

  }

  獲取指定頁面的全部的鏈接地址即URL地址值

  private void visitorFunction() {

  try {

  Parser parser = new Parser();

  parsersetURL(); parsersetEncoding(parsergetEncoding());

  NodeVisitor visitor = new NodeVisitor(){

  public void visitTag(Tag tag) {

  Systemoutprint(tag name is:+taggetTagName()+\n class is:+taggetClass());

  }

  };

  parservisitAllNodesWith(visitor);

  }catch (Exception e) {

  // TODO: handle exception

  }

  }

  這個可以用來當URL隊列網頁爬蟲將以這些為對象進行順序抓取全部的相關頁面信息

  private void linkBeanFunction() {

  Parser parser = new Parser();

  LinkBean linkBean = new LinkBean();

  linkBeansetURL(); URL[] urls = linkBeangetLinks();

  for (int i = ; i < urlslength; i++) {

  URL url = urls[i];

  Systemoutprint(url);

  }

  }

  也可以將全部的URL地址抓取下來的

  抓取頁面的全部img標簽鏈接值與圖片本身位置

  private void testImageVisitor() {

  try {

  ImageTag imgLinkImageTag;

  ObjectFindingVisitor visitor = new ObjectFindingVisitor(ImageTagclass);

  Parser parser = new Parser();

  parsersetURL(); parsersetEncoding(parsergetEncoding()); parservisitAllNodesWith(visitor); Node[] nodes = visitorgetTags(); for (int i = ; i < nodeslength; i++) {

  imgLinkImageTag = (ImageTag) nodes[i];//表示的是頁面中的IMG標簽的

  Systemoutprint(image url is:+imgLinkImageTaggetImageURL()+ ImageLocation:+imgLinkImageTagextractImageLocn());

  }

  }catch (Exception e) {

  eprintStackTrace();

  }

  }

  查看API發現

  AppletTag BaseHrefTag BodyTag Bullet BulletList CompositeTag DefinitionList DefinitionListBullet Div DoctypeTag FormTag FrameSetTag FrameTag HeadingTag HeadTag Html ImageTag InputTag JspTag LabelTag LinkTag MetaTag ObjectTag OptionTag ParagraphTag ProcessingInstructionTag ScriptTag SelectTag Span StyleTag TableColumn TableHeader TableRow TableTag TagNode TextareaTag TitleTag有這麼多的HTML標簽是可以套的即想要什麼樣的HTML頁面標簽都是可以取出來的這樣的話可以分門進行探測標簽的!


From:http://tw.wingwit.com/Article/program/Java/hx/201311/27059.html
    推薦文章
    Copyright © 2005-2013 電腦知識網 Computer Knowledge   All rights reserved.