VisClient/org/hfbk/vis/source/SourceGoogleImages.java

Go to the documentation of this file.
00001 package org.hfbk.vis.source;
00002 
00003 import java.io.UnsupportedEncodingException;
00004 import java.net.URL;
00005 import java.net.URLEncoder;
00006 
00007 import org.dronus.graph.Node;
00008 import org.hfbk.util.HTTPUtils;
00009 
00010 public class SourceGoogleImages extends SourceRegExp {
00011 
00012         public SourceGoogleImages(URL url) {
00013                 super(url);
00014                 root=add(keyword, "imagefield",null);
00015                 String start=getParam(url, "start");
00016                 if (start==null) start="0";
00017                 add(""+(Integer.parseInt(start)+1), "next", root);
00018         }
00019 
00020         String matcher() {
00021                 return "(?i)&imgrefurl=(.*?)&.*?h=(.*?)&w=(.*?)&.*?src=(.+?:(http.*?)) ";
00022         }
00023 
00024         String url() throws UnsupportedEncodingException {
00025                 String start=getParam(url, "start");
00026                 if (start==null) start="0";
00027                 return "http://images.google.com/images?q="
00028                         +URLEncoder.encode(keyword,"utf8")
00029                         +"&btnG=Bilder-Suche&gbv=1&start="+(Integer.parseInt(start)*20);
00030         }
00031 
00032         void parse(String[] matches){
00033                 Node image=add(HTTPUtils.decode(matches[5]),"image",root);
00034                 add(matches[4],"thumbnail", image);
00035                 add(HTTPUtils.decode(matches[1]), "URL", image);
00036                 //add(matches[3]+" "+macthes[2], "size", image);
00037         }
00038 }

Generated on Tue Apr 7 17:57:20 2009 for visclient by  doxygen 1.5.1