I 'm Trying split the text of this request: `
Document document = Jsoup .connect("https://web.servientrega.com/PortalServientrega/WebServicePortal/tracking/api/envio/2003159943/1/es")
.validateTLSCertificates(false)
.ignoreContentType(true)
.get(); System.out.println(document.text());
with the result I want to fill a table with the information that I got. image: Image with I want to do
The response that page is giving you is in Json format. You need to parse it before you can process it. I would suggest using Gson to parse this response. Currently the latest version of Gson is 2.10.1, which can be downloaded here.
This is a working example that puts the response into a table:
String[][] table;
JsonParser parser = new JsonParser();
JsonObject obj = parser.parse(document.text()).getAsJsonObject();
JsonArray array = obj.get("movimientos").getAsJsonArray();
table = new String[3][array.size()];
for (int i = 0; i < array.size(); i++) {
JsonObject element = array.get(i).getAsJsonObject();
table[0][i] = element.get("fechaDatetime").getAsString();
table[1][i] = element.get("movimiento").getAsString();
table[2][i] = element.get("ubicacion").getAsString();
}
The resulting table looks like this:
------------------------------------------------------------------------------------------
| 2018-04-04T18:09:16 | Guia generada | Bogota (Cundinamarca) |
| 2018-04-05T01:37:00 | Ingreso al centro logistico | Bogota (Cundinamarca) |
| 2018-04-05T20:29:35 | Salio a ciudad destino | Bogota (Cundinamarca) |
| 2018-04-06T23:52:59 | Ingreso al centro logistico | Barranquilla (Atlantico) |
| 2018-04-09T07:50:38 | En zona de distribucion | Barranquilla (Atlantico) |
| 2018-04-09T10:17:36 | Reportado entregado | Barranquilla (Atlantico) |
| 2018-04-09T18:29:54 | Entrega verificada | Barranquilla (Atlantico) |
------------------------------------------------------------------------------------------