使用javascript获取网站中的所有网址

net*_*tha 4 javascript url

任何人都知道使用javascript获取网站中所有URL的方法吗?我只需要以相同域名开头的链接.不需要考虑其他链接

bob*_*nce 17

那么这将获得页面上所有相同的主机链接:

var urls = [];
for(var i = document.links.length; i --> 0;)
    if(document.links[i].hostname === location.hostname)
        urls.push(document.links[i].href);
Run Code Online (Sandbox Code Playgroud)

如果按站点你的意思是你想递归获取链接页面内的链接,这有点棘手.您必须将每个链接下载到一个新文档中(例如在一个文档中<iframe>),并onload检查iframe自己的文档以获取更多链接以添加到要获取的列表中.您需要查找已经抓取的URL,以避免两次获取同一文档.它可能不会很快.


SCo*_*vin 6

或者在es6

[...document.links].map(l => l.href)
Run Code Online (Sandbox Code Playgroud)


Muh*_*hid -2

使用 jquery 你可以找到页面上符合特定条件的所有链接

$("a[href=^domain.com]").each(function(){
      alert($(this).attr("href"));
});
Run Code Online (Sandbox Code Playgroud)