2017-08-10 2 views
0

Est-il possible de lister tous les liens qui existent dans la page html, compte tenu du lien html comme une entrée, à peu près vous le voyez ici? http://www.feedbucket.com/?src=http://allearsenglish.libsyn.com/rss&start=0Comment extraire tous les liens donnés un fichier html et même la taille du fichier?

Il semble que le site Web lit tous les liens qui existent et me donne le résumé, et lit la taille du fichier du lien mp3 sans l'ouvrir.

Connaissez-vous de bons tutoriels qui m'aident à apprendre ce sujet ou des sujets similaires?

+0

En Javascript, cela ne peut être fait en raison de la [Politique de même origine] (https://en.wikipedia.org/wiki/Same-origin_policy). Tout simplement: Pour des raisons de sécurité, il n'est pas possible d'obtenir le code source d'un site Web externe avec Javascript, sauf si ce site le permet spécifiquement. Vous devrez utiliser un langage côté serveur comme Java ou PHP pour que cela fonctionne. – icecub

Répondre

0

J'ai une idée. Vous pouvez obtenir tous les liens dans ces URL en utilisant la fonction split, comme:

var link = "http://www.feedbucket.com/?src=http://allearsenglish.libsyn.com/rss&start=0"; 
var links = link.split("http://"); 
0

Si vous utilisez java à côté serveur (en raison de la balise java)

Vous pouvez utiliser cette parser Java html : jsoup

Vous demanderiez la page de l'URL d'entrée comme ceci:

String src = request.getParameter("src"); 
Document doc = Jsoup.connect(src).get(); 

puis analyser « doc » pour trouver tous les liens dans la page comme e est:

Elements links = doc.select("a[href]"); 

Here est un exemple similaire.

0

Il existe une tonne de bibliothèques d'analyse HTML. Jsoup est plutôt génial pour Java. Vous feriez quelque chose comme ci-dessous pour obtenir une liste des éléments. Et alors vous itérer la liste pour les imprimer, obtenir la taille de fichier, tout ce que vous vouliez d'autre pour obtenir avec eux

Jsoup.connect("http://www.feedbucket.com/?src=http://allearsenglish.libsyn.com/rss&start=0").get().getElementsByAttribute("href"); 

Qu'est-ce que les bibliothèques de l'analyseur HTML faire est d'obtenir la source de la page, et de saisir tous les fichiers HTML tags, et à partir de là filtrer pour quelque chose comme un "un" tag pour le lien.