<rt id="bn8ez"></rt>
<label id="bn8ez"></label>

  • <span id="bn8ez"></span>

    <label id="bn8ez"><meter id="bn8ez"></meter></label>

    隨筆-65  評論-68  文章-4  trackbacks-0

    ///////////////////////////////////////////////////
    //其實這個程序可以進一步處理進而過濾出需要的信息
    //@author Xiaoshuang
    //

    import java.sql.*;
    import java.net.*;
    import java.io.*;

    public class WeatherFilter{
     private String html;
     private String target="
    http://weather.news.sohu.com/query.php?city=北京";
     
     public WeatherFilter()throws Exception{
      this(null);
     }
     
     public WeatherFilter(String targetIn)throws Exception{
      if(targetIn!=null)
       this.target=targetIn;
      URL targetURL=new URL(target);
      HttpURLConnection conn=(HttpURLConnection)targetURL.openConnection();
      conn.connect();
      InputStream inputSteam=conn.getInputStream();
      BufferedReader bufReader=new BufferedReader(new InputStreamReader(inputSteam));
      StringBuffer buf=new StringBuffer();
      String temp;
      while((temp=bufReader.readLine())!=null){
       buf.append(temp);
      }
      html=buf.toString();
      html=html.toLowerCase();
     }
     
     public String toString(){
      return html;
     }
     
     private void disposeSpaces(){
      html=html.replaceAll(" ","");
      html=html.replaceAll("\t","");
     }
     
     private void replaceAllInTag(String tag,String replace){
      while(replaceAStyle(tag,replace));
     }
     
     private boolean replaceAStyle(String tag,String replace){
      int pageLength=html.length();
      int loc = html.indexOf("<"+tag);
      if(loc>=0){
       int loc2=html.indexOf("</"+tag+">")+8;
       StringBuffer buf=new StringBuffer();
       for(int i=0;i<loc;i++)
        buf.append(html.charAt(i));
       if(replace!=null)
        buf.append(replace);
       for(int i=loc2;i<pageLength;i++)
        buf.append(html.charAt(i));
       html=buf.toString();
       return true;
      }
      else{
       return false;
      }
     }
     
     private void markAllImages(){
      boolean dispose=false;
      do{
       StringBuffer buf=new StringBuffer();
       int pageLength=html.length();
       int end=html.indexOf("<img");
       for(int i=0;i<end;i++)
        buf.append(html.charAt(i));
       buf.append("\n");
       while(html.charAt(++end)!='>');
       for(int i=end+1;i<pageLength;i++){
        buf.append(html.charAt(i));
       }
       html=buf.toString();
       buf=null;
       System.gc();
      }while(html.indexOf("<img")>=0);
     }

     
     private void disposeAllTags(){
      int pageLength=html.length();
      StringBuffer buf=new StringBuffer();
      boolean dispose=false;
      for(int i=0;i<pageLength;i++){
       if(html.charAt(i)=='<'){
        dispose=true;
        continue;
       }
       if(html.charAt(i)=='>'){
        dispose=false;
        continue;
       }
       if(!dispose){
        buf.append(html.charAt(i));
       }
      }
      html=buf.toString();
     }
     
     private void disposeAllKeyChars(){
      int pageLength=html.length();
      StringBuffer buf=new StringBuffer();
      boolean dispose=false;
      for(int i=0;i<pageLength;i++){
       if(html.charAt(i)=='&'){
        dispose=true;
        continue;
       }
       if(html.charAt(i)==';'){
        dispose=false;
        buf.append('\n');
        continue;
       }
       if(!dispose){
        buf.append(html.charAt(i));
       }
      }
      html=buf.toString();
     }

     
     public static void main(String[] args)throws Exception{
      WeatherFilter filter;
      if(args.length==1)
       filter=new WeatherFilter(args[args.length-1]);
      else
       filter=new WeatherFilter();
      filter.replaceAllInTag("style",null);
      filter.replaceAllInTag("script",null);
      filter.markAllImages();
      filter.disposeAllTags();
      filter.disposeSpaces();
      filter.disposeAllKeyChars();
      System.err.print(filter);
     }
    }

    posted on 2005-09-15 21:18 小爽 閱讀(1212) 評論(0)  編輯  收藏 所屬分類: 我的Java
    主站蜘蛛池模板: 亚洲成AV人片一区二区| 日本免费人成在线网站| 亚洲狠狠狠一区二区三区| 国产免费无遮挡精品视频 | 成人免费夜片在线观看| 免费观看的毛片手机视频| 亚洲熟妇少妇任你躁在线观看| 在线观看AV片永久免费| 亚洲人成7777影视在线观看| 91香蕉成人免费网站| 亚洲jizzjizz在线播放久| 夭天干天天做天天免费看| 亚洲色欲色欲www在线播放| 超pen个人视频国产免费观看| 亚洲日韩乱码中文字幕| 国产免费av片在线无码免费看| 农村寡妇一级毛片免费看视频| 国产aⅴ无码专区亚洲av麻豆| 91视频免费观看| 亚洲精品福利网站| 五月婷婷综合免费| 亚洲第一成年网站视频| 亚洲中文字幕伊人久久无码| 野花香高清在线观看视频播放免费 | 久草视频在线免费| 激情内射亚洲一区二区三区| 69精品免费视频| 亚洲熟女综合色一区二区三区| 成人免费视频国产| 伊人免费在线观看| 亚洲av专区无码观看精品天堂| 国产三级免费观看| 182tv免费视频在线观看| 亚洲人6666成人观看| 免费国产a国产片高清| 中文成人久久久久影院免费观看| 亚洲成人一级电影| 九月婷婷亚洲综合在线| 91免费福利精品国产| 看成年女人免费午夜视频| 亚洲av无码国产精品色午夜字幕 |