2017-08-10 34 views
0

有没有可能列出html页面中存在的所有链接,给定html链接作为输入,几乎你在这里看到它? http://www.feedbucket.com/?src=http://allearsenglish.libsyn.com/rss&start=0如何提取所有给定的html文件链接,甚至文件大小?

它看起来像网站读取所有存在的链接,并给我的总结,并读取mp3链接的文件大小,而无需打开它。

你知道有什么好的教程可以帮助我学习这个话题或类似的话题吗?

+0

在Javascript中,由于[同源策略](https://en.wikipedia.org/wiki/Same-origin_policy),无法完成此操作。简单地说:出于安全原因,除非该网站明确允许,否则无法使用Javascript获取外部网站的源代码。你将不得不使用像Java或PHP这样的服务器端语言来实现这个功能。 – icecub

回答

0

我有个主意。您可以通过使用分割功能,如获取这些URL的所有链接:

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

如果您使用的是Java在服务器端(因为Java代码的)

您可以使用此Java的HTML解析器库:jsoup

你会从输入网址这样的请求的页面:

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

,然后解析“DOC”找到像个页面所有链接是:

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

Here是一个类似的例子。

0

这里有很多HTML解析库。对于Java来说,Jsoup非常棒。你会做下面的事情来获取元素列表。然后你会遍历列表打印它们,获取文件大小,任何你想要得到与他们

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

什么HTML解析器库将要做的就是让页面的源代码,并抓住所有的HTML标签,然后从中过滤出类似“a”标签的链接。

相关问题