Yo hice algo parecido era te voy a enviar si por ahí te sirve en java es yo hice para filtrar una cotización de moneda pero vos le cambia nomas la condición y filtra lo que quiera de una pagina web.
package testurl;
import java.io.BufferedReader;
import java.io.IOException;
import java.io.InputStream;
import java.io.InputStreamReader;
import java.net.MalformedURLException;
import java.net.URL;
import java.net.URLConnection;
import java.util.logging.Level;
import java.util.logging.Logger;
public class Testurl {
    public static void main(String[] args) {
        try {
            //se abre la conexiòn
            URL url = new URL("http://www.cambioschaco.com.py/php/chaco_cotizaciones_nuevo.php");
            URLConnection conexion = url.openConnection();
            conexion.connect();
            //Lectura
            InputStream is = conexion.getInputStream();
            BufferedReader br = new BufferedReader(new InputStreamReader(is));
            char[] buffer = new char[1000];
           //ACA EMPIEZA MI CONDICIÓN DESDE ACÁ PODES CAMBIAR VOS
            int leido;
            String texto = "";
            while ((leido = br.read(buffer)) > 0) {
                String datos = new String(buffer, 0, leido);
                texto += datos;
            }
            String[] tr = texto.split("<tr");
            String fila = "";
            for (String linea : tr) {
                if (linea.contains("Dolar Americano")) {
                    fila = linea;
                }
            }
            String[] td = fila.split("<td");
            String columna = "";
            for (String linea : td) {
                if (linea.contains(",00")) {
                    System.out.println("---> " + linea);
                    int pos1 = 0;
                    int pos2 = 0;
                    String cotizacion = "";
                    for (int i = 0; i < linea.length(); i++) {
                        if (linea.substring(i, i + 1).equals(">")) {
                            pos1 = i;
                        } else if (linea.substring(i, i + 1).equals("<")) {
                            pos2 = i;
                            break;
                        }
                    }
                    System.out.println("---> " + linea.substring(pos1 + 1, pos2));
                }
            }
       //FIN DE LA CONDICION
        } catch (MalformedURLException ex) {
            Logger.getLogger(Testurl.class.getName()).log(Level.SEVERE, null, ex);
        } catch (IOException ex) {
            Logger.getLogger(Testurl.class.getName()).log(Level.SEVERE, null, ex);
        }
    }
}
En el URL le pasa el url de la pagina web que quere filtrar.
ojala que te sirva