Comment obtenir des liens HTML à partir d'une URL
Je suis au tout début de mon Réseau d'Attribution et je suis déjà bloqué.
Affectation me demande de vérifier que l'utilisateur a fournies site web pour les liens et pour déterminer si elles sont actives ou inactives par la lecture de l'en-tête info.
Jusqu'à présent après recherche sur google, je viens d'avoir ce code qui récupère le site web. Je ne comprends pas comment faire pour aller au-dessus de cette information et de rechercher des liens HTML.
Voici le code:
import java.net.*;
import java.io.*;
public class url_checker {
public static void main(String[] args) throws Exception {
URL yahoo = new URL("http://yahoo.com");
URLConnection yc = yahoo.openConnection();
BufferedReader in = new BufferedReader(
new InputStreamReader(
yc.getInputStream()));
String inputLine;
int count = 0;
while ((inputLine = in.readLine()) != null) {
System.out.println (inputLine);
}
in.close();
}
}
S'il vous plaît aider.
Merci!
Vous devez vous connecter pour publier un commentaire.
Vous pouvez également essayer jsoup html retriever et de l'analyseur.
Avec ce code, vous pouvez répertorier et analyser tous les éléments à l'intérieur d'un div avec la classe "post-title" de l'url .
Vous pouvez essayer ceci:
Ensuite Créer une classe appelée la Page
Vous avez deux options:
1) Vous pouvez lire la page web dans un HTMLDocument. Ensuite, vous pouvez obtenir un itérateur à partir du Document pour trouver toutes les HTML.La balise.Un tags. Une fois que vous trouver les attrbute des balises que vous pouvez obtenir le code HTML.Attribut.HREF partir de l'attribut de l'attribut de la balise.
2), Vous pouvez étendre HTMLEditor.ParserCallback et de mettre en œuvre la handleStartTag(...) de la méthode. Alors à chaque fois que vous trouvez une Une balise, vous pouvez obtenir de l'attribut href, ce qui aura pour contenir le lien. Le code de base pour l'invocation de l'analyseur de rappel est:
HtmlParser est ce que vous avez besoin ici. Beaucoup de choses peuvent être faites avec.
Vous avez besoin pour obtenir le code d'état HTTP que le serveur revint avec la réponse. Un serveur retourne une erreur 404 si la page n'existe pas.
Découvrez ce:
http://download.oracle.com/javase/1.4.2/docs/api/java/net/HttpURLConnection.html
et plus particulièrement de la getResponseCode méthode.
Je voudrais parser le HTML avec un outil comme NekoHTML. C'essentiellement des correctifs de code HTML mal formé pour vous et vous permet d'accéder comme XML. Ensuite, vous pouvez traiter les éléments link et essayer de les suivre comme vous l'avez fait pour la page d'origine.
Vous pouvez vérifier quelques -exemple de code qui fait cela.