javaからブラウザに表示している値を取得するプログラムを作りたいです。
http://localhost:8888/route.php?from="出発駅"&to="到着駅"
で、出発駅から到着駅までかかる時間をブラウザに数字だけ表示するようにしています。
ブラウザに表示する段階では駅名を変えてもうまくいくのですが、
実際にjavaから値を取得しようとすると、受け取った値が空だったり、ブラウザに表示した値と違っていたりして正しい値を取得できません。
どのようにプログラムを組めばうまく取得できますか。
import java.io.*;
import java.net.URL;
class FileGet {
public static StringBuffer fileGetContents (String url, String encode) { StringBuffer buffer = new StringBuffer(); try { InputStream is = new URL(url).openStream(); InputStreamReader isr = new InputStreamReader(is, encode); BufferedReader in = new BufferedReader(isr); String s = null; while ((s = in.readLine()) != null){ buffer.append(s).append("\n"); } } catch (Exception e) { System.out.println( e.toString() ); buffer = null; } finally { return buffer; } } public static StringBuffer fileGetContents (String url) { return fileGetContents ( url, "JISAutoDetect" ); } public static void main(String[] args) { String from ="池袋"; String to = "新宿"; StringBuffer htmlBuffer = FileGet.fileGetContents("http://localhost:8888/route.php?from="+from+"&to="+to); System.out.println(htmlBuffer.toString()); }
}
このプログラムで上記のような不具合が起きます。
修正箇所やプログラムの組み方など教えていただきたいです。
よろしくお願いします。