Ich habe ein Problem mit Java HTTP. Ich versuche eine App zu erstellen, die eine bestimmte Anfrage an den Server sendet und dann benötigte Daten erhält. Ich habe herausgefunden, wie man GET an den Server sendet, aber ich stecke dann völlig fest. Ich habe viele Möglichkeiten gefunden, Suchergebnisse in Google zu analysieren, aber keine Informationen zu anderen Webressourcen. Zum Beispiel möchte ich eine benutzerdefinierte Suche nach Transporttickets von einer Website durchführen - was soll ich tun? Wenn es irgendwie hilfreich ist - hier ist der Code, den ich für GET verwende.Wie suche ich mit Java HTTP nach Daten?
public static void main(String[] args) throws UnsupportedEncodingException, MalformedURLException, IOException {
String url = "https://www.example.com/tickets/search";
String charset = java.nio.charset.StandardCharsets.UTF_8.name();
String param1 = "value1";
String param2 = "value2";
String query = String.format("param1=%s¶m2=%s",
URLEncoder.encode(param1, charset),
URLEncoder.encode(param2, charset));
URLConnection connection = new URL(url + "?" + query).openConnection();
connection.setRequestProperty("Accept-Charset", charset);
InputStream response = connection.getInputStream();
try (Scanner scanner = new Scanner(response)) {
String responseBody = scanner.useDelimiter("\\A").next();
System.out.println(responseBody);
}
}
Benötigen Sie etwas wie einen Webcrawler? Werfen Sie einen Blick auf http://nutch.apache.org/ – dumitru
Was ist das spezifische Problem? Konstruiert er den Abfrage-URI, lädt die Ergebnisse herunter oder parst die Ergebnisse? –
Ich würde sagen, dass alles auf einmal. Ich muss die Abfrage senden, ein Problem, ich muss dann Ergebnisse in JSON, BTW, analysieren - zweite. – iacm