Getting size of a webpage before parsing it

Posted by user2869844 on Stack Overflow See other posts from Stack Overflow or by user2869844
Published on 2013-10-19T03:50:08Z Indexed on 2013/10/19 3:53 UTC
Read the original article Hit count: 148

Filed under:
|

I am trying to parse a webpage using jsoup and all is working good using this code:

class DownloadSearchResultsTask extends AsyncTask<String, Integer, ArrayList> { 

private String link = "link"; 
private String title = "title"; 
private String vote = "vote"; 
private String age = "age";
private String size = "size"; 

private String seeders = "seeders"; 
private String leechers = "leachers"; 

@Override protected void onPreExecute() { 
// TODO Auto-generated method stub 
super.onPreExecute(); 
}        
 @Override protected ArrayList doInBackground(String... params) { 

 // TODO Auto-generated method stub ArrayList

 <HashMap<String, String>> searchResult = new ArrayList<HashMap<String, String>>(); HashMap<String, String> map; String link, title, vote, age, size, seeders, leechers; try { HttpURLConnection httpURLConnection=(HttpURLConnection) new URL("http://www.facebook.com").openConnection(); Log.d("VIVZ", httpURLConnection.getContentLength()+""); } catch (MalformedURLException e1) { // TODO Auto-generated catch block 
 e1.printStackTrace(); } catch (IOException e1) { 
 // TODO Auto-generated catch block 


 e1.printStackTrace(); 

 } 

    Document mDocument;
try {
  long l1=System.nanoTime();
  Log.e("VIVZ",l1+""); 

  mDocument = Jsoup .connect(params[0]) .userAgent( "Mozilla/5.0 (Windows; U; WindowsNT 5.1; en-US; rv1.8.1.6) Gecko/20070725 Firefox/2.0.0.6") .referrer("http://www.google.com").get(); 

  long l2=System.nanoTime(); Log.e("VIVZ",(l2-l1)+""); 
  Elements mResults = mDocument.select("div.results dl"); 
  for (Element result : mResults) { 

  map = new HashMap<String, String>(); 
  Elements elements = result.select("dt a"); 
  for (Element linkAndTitle : elements) { 

  link = linkAndTitle.attr("abs:href"); 
  title = linkAndTitle.text(); 
  map.put(this.link, link); 
  map.put(this.title, title); 
  } 

  elements = result.select("dd span.v"); for (Element v : elements) { vote = v.text(); map.put(this.vote, vote); } elements = result.select("dd span.a"); for (Element a : elements) { age = a.text(); map.put(this.age, age); } elements = result.select("dd span.s"); for (Element s : elements) { size = s.text(); map.put(this.size, size); } elements = result.select("dd span.u"); for (Element u : elements) { seeders = u.text(); map.put(this.seeders, seeders); 

  }

  elements = result.select("dd span.d");

  for (Element d : elements) 

  { leechers = d.text();
  map.put(this.leechers, leechers); 

  } searchResult.add(map); 
  } Log.e("VIVZ", searchResult.toString()); 
  return searchResult; 
  } catch (IOException e) { // TODO Auto-generated catch block 
  Log.e("VIVZ",e+""); 

  } return null; 
  } 

  @Override protected void onPostExecute(ArrayList result) { // TODO Auto-generated method stub 

  super.onPostExecute(result); 

  } 

  }

The problem is i want to get the size of page before parsing it and show a Determinate progress bar please help me .....

thanx in advance

© Stack Overflow or respective owner

Related posts about android

Related posts about jsoup