26/07/11 21:41
crashoverride
Ciao, ho provato a ottenere dei dati da una pagina di Amazon ma qualcosa fa problemi.
Il codice è questo:
E dovrebbe stampare il contenuto di queste Div tag
<div class="zg_rank">1</div>
C'è ne sono 20 guardando il source code con Firebug però una volta che ho finito di leggere dati dal BufferedReader se poi stampo la stringa che ho fatto non è uguale al codice che mi viene visualizzato con Firebug quindi il tuttto non funziona.
Sapete come posso mettere apposto il tutto??
Grazie.
Il codice è questo:
import java.io.BufferedReader; import java.io.IOException; import java.io.InputStreamReader; import java.net.URLConnection; import java.net.URL; public class Bot { public static void main(String[] args) throws IOException { BufferedReader buff; InputStreamReader inStream; String htmlCode = null; try{ URL url = new URL("http://www.amazon.it/gp/bestsellers/electronics/473246031/ref=s9_dnav_bw_ir12_z?pf_rd_m=A11IL2PNWYJU7H&pf_rd_s=center-1&pf_rd_r=1VC27Z69NFM1FJAR2YNY&pf_rd_t=101&pf_rd_p=245982287&pf_rd_i=412609031"); URLConnection urlConnection = (URLConnection)url.openConnection(); inStream = new InputStreamReader(urlConnection.getInputStream()); buff = new BufferedReader(inStream); while(true){ if (buff.readLine()!=null){ htmlCode += buff.readLine() + "\n"; }else{ break; } } int startFrom = htmlCode.indexOf("<div class=\"zg_rank\">"); int endFrom = htmlCode.indexOf("</div>"); String idNumber = htmlCode.substring(startFrom, endFrom); System.out.println("idNumber"); }catch(Exception e){}; } }
E dovrebbe stampare il contenuto di queste Div tag
<div class="zg_rank">1</div>
C'è ne sono 20 guardando il source code con Firebug però una volta che ho finito di leggere dati dal BufferedReader se poi stampo la stringa che ho fatto non è uguale al codice che mi viene visualizzato con Firebug quindi il tuttto non funziona.
Sapete come posso mettere apposto il tutto??
Grazie.
aaa