La copia del código es la siguiente:
import java.io.bufferedReader;
import java.io.ioException;
import java.io.inputstreamreader;
import java.net.malFormedUrexception;
import java.net.url;
import java.util.arrayList;
import java.util.hashmap;
import java.util.list;
import java.util.regex.matcher;
import java.util.regex.pattern;
import java.net.*;
import java.io.*;
import java.util.regex.*;
/*
Obtenga la regla especificada construyendo expresiones regulares
*/
URL de clase pública
{
starturl de cadena privada;
Cadena urlcontent;
String ContentArea;
Cadena privada Strareabegin, Strareaend;
cadena privada stringInUrl, stringNotInUrl;
Cadena strContent; // El contenido recopilado obtenido
Cadena [] Allurls;
Reglas privadas de cadena;
Urlandtitle Urlandtitle = New Urlandtitle ();
Public static void main (String [] args)
{
Urls myurl = new URLS ("<cuerpo", "/cuerpo>");
myurl.getstarturl ("http://www.zuzwn.com/");
myurl.getUrlContent ();
myurl.getContenerea ();
myurl.getstarturl ("http://www.zuzwn.com/");
myurl.getStringNotInUrl ("Google");
myurl.urls ();
//System.out.println("Starturl:"+Myurl.Starturl);
//System.out.println("urlContent:"+Myurl.urlContent);
//System.out.println("ContenerAea:"+Myurl.Contenerea);
}
// Inicializar a los constructores Strreebegin y Strareaend
URL públicas (String Strareabegin, String Strareaend)
{
this.Stareabegin = StrareBegin;
this.StarAEND = StrAREAEND;
}
//
URLS NUEVO PÚBLICO ()
{
int i = 0;
// string regex = "<a href ="? '? /?
String regex = "<a.*?/A>";
// string regex = "http: //.*?>";
Patrón PT = Pattern.compile (regex);
Matcher mt = pt.matcher (contentarea);
While (mt.find ())
{
System.out.println (mt.group ());
i ++;
// Obtén el título
Title de match = patrón.compile (">.*? </a>") .matcher (mt.group ());
While (title.find ())
{
System.out.println ("Título:"+Title.Group (). ReplaceAll ("> | </a>", ""));
}
// Obtener la URL
Matcher myUrl = Pattern.Compile ("href =.*?>"). Matcher (mt.group ());
Mientras (myurl.find ())
{
System.out.println ("Sitio web:"+myurl.group (). ReplaceAll ("href = |>", ""));
}
System.out.println ();
}
System.out.println ("Hay totales"+i+"resultados compatibles");
}
// Obtener el sitio web de la colección de inicio
public void getStarturl (string starturl)
{
this.starturl = starturl;
}
// Obtener el contenido donde se encuentra la URL;
public void getUrlContent ()
{
StringBuffer IS = new StringBuffer ();
intentar
{
Url myurl = nueva url (starturl);
BufferedReader BR = nuevo BufferedReader (
nuevo InputStreamReader (myurl.openStream ()));
Cadena S;
while ((s = br.readline ())! = nulo)
{
es.append (s);
}
urlContent = is.ToString ();
}
captura (excepción e)
{
System.out.println ("El archivo URL no se pudo emitir");
E.PrintStackTrace ();
}
}
// Obtener el área de correspondencia donde se encuentra la URL
Public void getContenerea ()
{
int pos1 = 0, pos2 = 0;
pos1 = urlContent.IndexOf (StrareBegin)+Strareabegin.Length ();
pos2 = urlContent.IndexOf (Strareaend, Pos1);
ContentArea = urlContent.Substring (pos1, pos2);
}
// Las siguientes dos funciones obtienen las palabras clave que debe contener la URL y las palabras clave que no se pueden incluir
// Solo se realizan experimentos preliminares aquí. En la etapa posterior, debe haber más de una palabra clave protegida y una palabra clave que no se puede incluir.
Public void getTringinurl (String StringInurl)
{
this.stringinurl = StringInurl;
}
Public void getTringNotInUrl (String StringNotinUrl)
{
this.StringNotInUrl = StringNotInUrl;
}
// Obtener las reglas de recopilación
// Obtener la URL
Public void getUrl ()
{
}
Cadena pública getRegex ()
{
RETURN REGEX;
}
clase Urlandtitle
{
Cadena myurl;
Título de cadena;
}
}