繁体   English   中英

如何使用 javascript 从网页中抓取链接?

[英]How to scrape links from a webpage using javascript?

我正在寻找 facebook 提要上显示的帖子链接。 我注意到帖子链接有两个共同点,它有https://www.facebook.com/username/posts/1234567890

https://www.facebook.com/和 /posts/ 始终存在。

我使用此代码获取页面上的所有链接,但我不知道如何只获取链接

https://www.facebook.com/和 /posts/ 在此。

var links = document.querySelectorAll("a[href^='https://www.facebook.com']");

for(var i = 0; i< links.length; i++){
  console.log(links[i].href);
}

我尝试了正则表达式,这是我在学习此 url 模式的正则表达式后发现的

^(https://www.|http://)[a-zA-Z0-9._$]+.[a-zA-Z]+/[a-zA-Z0-9]+/posts/ [0-9]+$

但我不知道如何使用它来获得结果。

谁能帮我解决这个问题?

使用getElementsByTagName ,转换为数组,根据您的要求进行过滤,然后使用 map 获取 URL:

[...document.getElementsByTagName("A")]
.filter(link => 
  link.href.includes("https://www.facebook.com/") &&
  link.href.includes("/posts/")
)
.map(link => link.href)

暂无
暂无

声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.

 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM