Ya estoy inscrito ¿Todavía no tienes acceso? Nuestros Planes
Ya estoy inscrito ¿Todavía no tienes acceso? Nuestros Planes
0
respuestas

no me deja buscar otra peli

No me deja buscar otra peli que no sea matrix

package principal;

import com.aluracursos.screenmatch.modules.Titulo;
import com.aluracursos.screenmatch.modules.TituloOmdb;
import com.google.gson.FieldNamingPolicy;
import com.google.gson.Gson;
import com.google.gson.GsonBuilder;

import java.io.FileWriter;
import java.io.IOException;
import java.net.URI;
import java.net.http.HttpClient;
import java.net.http.HttpRequest;
import java.net.http.HttpResponse;
import java.security.Principal;
import java.util.ArrayList;
import java.util.List;
import java.util.Scanner;

public class PrincipalconBusqueda {

    public static void main(String[] args) throws IOException, InterruptedException {

        while (true) {
            Scanner lectura = new Scanner(System.in);
            List<Titulo> titulos = new ArrayList<>();
            System.out.println("Ingrese el nombre de la pelicula:");


            //Aqui entrada de la busqueda colocada por el usuario.
            var busqueda = lectura.nextLine();

            //Si lo que busca nuestro usuario es igual a salir entonces se rompe el bucle
            if (busqueda.equalsIgnoreCase("exit")){
                break;
            }

            //aqui se agrega a la url la busqueda del usuario
            String direccion = "https://www.omdbapi.com/?t="+busqueda;

            try {
                HttpClient client = HttpClient.newHttpClient();

                //Pedimos los datos
                HttpRequest request = HttpRequest.newBuilder().uri(URI.create(direccion+"x&apikey=35020620")).build();

                //RECIBIMOS LOS DATOS POR RESPUESTA para interpretarlos
                HttpResponse<String> response = client.send(request, HttpResponse.BodyHandlers.ofString());

                System.out.println(response.body());

                //USANDO LIBRERIAS y CONVIETIENDO A MAYUSCULAS
                Gson gson = new GsonBuilder().setFieldNamingPolicy(FieldNamingPolicy.UPPER_CAMEL_CASE).create();

                //Convertimos la respuesta a json
                String json = response.body();

                TituloOmdb miTituloOmdb = gson.fromJson(json, TituloOmdb.class);
                System.out.println(miTituloOmdb);

                //Excepciones

                Titulo miTitulo = new Titulo(miTituloOmdb);
                System.out.println("Titulo ya convertido:" + miTitulo);

                //AGREGAMOS CADA UNO DE LOS TITULOS QUE VAMOS BUSCANDO
                titulos.add(miTitulo);

            } catch (NumberFormatException e) {
                //enviamos un mensaje de que ocurrio un error
                System.out.println("ocurrio un error:");
                //capturamos el error y lo mostramos por pantalla
                System.out.println(e.getMessage());
            } catch (IllegalArgumentException e) {
                System.out.println("ocurrio un error verifique la dirrec:");
                System.out.println(e.getMessage());
            }catch (Exception e) {
                System.out.println("ocurrio un error en la inspeccion");
            }


        }

        System.out.println("ejecucion finalizada");


    }
}