X-Git-Url: http://gitweb.fperrin.net/?p=GpsPrune.git;a=blobdiff_plain;f=tim%2Fprune%2Ffunction%2FSearchWikipediaNames.java;h=ab24522eb68120168b49c420996f245ea8ffb32d;hp=4377df81d5a39bbdd65bc897d0bf575104b2011e;hb=649c5da6ee1bbc590699e11a92316ece2ea8512d;hpb=eebbb64b5d63f9eea43a0dff908c30361a376768 diff --git a/tim/prune/function/SearchWikipediaNames.java b/tim/prune/function/SearchWikipediaNames.java index 4377df8..ab24522 100644 --- a/tim/prune/function/SearchWikipediaNames.java +++ b/tim/prune/function/SearchWikipediaNames.java @@ -1,7 +1,9 @@ package tim.prune.function; import java.io.InputStream; +import java.io.UnsupportedEncodingException; import java.net.URL; +import java.net.URLEncoder; import java.util.ArrayList; import javax.swing.JOptionPane; @@ -26,6 +28,8 @@ public class SearchWikipediaNames extends GenericDownloaderFunction private String _searchTerm = null; /** Maximum number of results to get */ private static final int MAX_RESULTS = 20; + /** Username to use for geonames queries */ + private static final String GEONAMES_USERNAME = "gpsprune"; /** * Constructor @@ -88,9 +92,16 @@ public class SearchWikipediaNames extends GenericDownloaderFunction else { lang = "en"; } + // Replace awkward characters with character equivalents + String searchTerm; + try { + searchTerm = URLEncoder.encode(_searchTerm, "UTF-8"); + } catch (UnsupportedEncodingException e1) { + searchTerm = _searchTerm; + } // Example http://ws.geonames.org/wikipediaSearch?q=london&maxRows=10 - String urlString = "http://ws.geonames.org/wikipediaSearch?title=" + _searchTerm + "&maxRows=" + MAX_RESULTS - + "&lang=" + lang; + String urlString = "http://api.geonames.org/wikipediaSearch?title=" + searchTerm + + "&maxRows=" + MAX_RESULTS + "&lang=" + lang + "&username=" + GEONAMES_USERNAME; // Parse the returned XML with a special handler GetWikipediaXmlHandler xmlHandler = new GetWikipediaXmlHandler(); try