Sto utilizzando l'API di ricerca personalizzata di Google in Java per ottenere risultati di Google in risposta a una query. Ho scritto questo codice con l'aiuto di altri posti, il codice è il seguente:Ottenere più di 10 risultati dall'API di ricerca personalizzata di Google V1 in Java
url = new URL("https://www.googleapis.com/customsearch/v1?key="+key+ "&cx="+ cx +"&q="+ searchText+"&alt=json"+"&start="+0+"&num="+30);
HttpURLConnection conn2 = (HttpURLConnection) url.openConnection();
System.out.println("Connection opened!");
conn2.setRequestMethod("GET");
conn2.setRequestProperty("Accept", "application/json");
BufferedReader br = new BufferedReader(new InputStreamReader(
(conn2.getInputStream())));
Il problema è che ogni volta che sto usando il codice di cui sopra, senza num e Parametri di avvio è in esecuzione correttamente, ma dando solo top 10 risultati. Quindi ho usato num e parametri di avvio. Ma stanno creando problemi. Qui non riesco a capire dove mettere il num e start parametri nell'URL. Fornisce sempre HTTP 400, ad es. Bad Request. Ho letto la pagina della documentazione, inoltre non sono fornite istruzioni chiare su dove mettere questi due parametri in Url.
Quindi se qualcuno mi aiuta a risolvere questo problema, sarò davvero grato. Grazie.
Sì, ma non riesco a capire dove dovrei inserire il parametro di avvio nell'URL, perché quando aggiungo start = 0 o start = 11 alla fine dell'URL come questo: https://www.googleapis.com/customsearch/v1? key = "+ key +" & cx = "+ cx +" & q = "+ searchText +" & alt = json "+" & start = "+ 0, sta dando lo stato HTTP 400 ie Bad Request. Quindi potresti dirmi esattamente come inquadrare questo url usando il parametro start – Joy
Nel tuo codice, stampa l'URL che stai usando, ad esempio System.out.println (url.toString()), quindi copia e incolla nel browser. l'errore completo nel formato JSON, qualcosa del genere (Un esempio: ho appena omesso il parametro "q" per ottenere questo). Se non riesci a risolvere il problema, pubblica i risultati che ottieni qui. { "error": { "errori": [ { , "Messaggio" "necessaria" :: "dominio":, "ragione" "globale" "parametro richiesto: q", "LocationType": "parametro", "location": "q" } ] , "codice": 400, "messaggio": "Parametro richiesto: q" } } –
Progettato in modo intelligente da Google. Facci fare più richieste, invece di restituire più risultati ... -.- – simon