javascript - 如何使用 JavaScript 从特定页面提取所有链接并将它们放入数组中?

标签 javascript hyperlink extract

老实说,我不知道从哪里开始“提取”。我最好的猜测是使用 JQuery 中的基本 .html() 标签来解决这个问题。这是一个旨在提高我的 JavaScript 技能的小项目。关于如何做到这一点有什么想法吗?非常感谢...

很抱歉我的表述不清楚。我的意思是从我不拥有的域中的特定页面中提取所有链接。然后,将这些链接放入一个数组中。谢谢!

最佳答案

嗯,想到这个了吗?

var arr = [].slice.call( document.querySelectorAll('a') );

它获取所有与 querySelectorAll 匹配的元素,并使用 [].slice.call 将返回的 nodeList 转换为数组,其中 []Array.prototype 的快捷方式。换句话说,它使用 call() 调用 native Array.slice 方法,将元素作为 this 值传递,从而有效地创建一个数组来自元素。

如果您需要 HTML,而不是 DOM 元素,您可以映射 elements 数组并返回 outerHTML

var markup = arr.map(function(elem) { return elem.outerHTML; });

或者,如果您只需要 URL,则可以运行相同的 map 并返回 href 属性

var urls = arr.map(function(elem) { return elem.getAttribute('href'); });

关于javascript - 如何使用 JavaScript 从特定页面提取所有链接并将它们放入数组中?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/30623080/

相关文章:

javascript - 使用 ckeditor 内联编辑后无法保存数据

javascript - if 语句中的多个链接

javascript - 有没有办法让 <button> 元素链接到某个位置,而无需将其包装在 <a href ... 标签中?

javascript - 右键单击并选择 "open..."之一后替换上下文菜单中的 href 链接

javascript - JQuery 比较类名

javascript - 当变量选择数组中的元素时,为什么 Node 看不到该元素?

java - 使用java提取tar.gz错误

python - 从文件中提取与另一个文件中的条件匹配的某些行

json - 操作非常大的 json 文件的有效方法?

javascript - Javascript 中的 Wait For All 同步模式