网页抓取实时更改数据

时间:2021-03-11 19:15:38

标签: javascript html web websocket screen-scraping

我对网页抓取还很陌生。静态内容很容易,但我想知道是否有办法抓取这样的网站: https://threatmap.checkpoint.com/

我需要从该站点抓取所有实时攻击。但我什至不知道如何开始。

1 个答案:

答案 0 :(得分:0)

有时您根本不需要抓取
但要深入了解机制。

本网站使用内置的 Browser Fetch API

你只需要从这个来源解码:
https://threatmap-api.checkpoint.com/ThreatMap/api/feed

下面是一个示例提取调用:

fetch("https://threatmap-api.checkpoint.com/ThreatMap/api/feed", {
  "headers": {
    "accept": "text/event-stream",
    "accept-language": "en-US,pt;q=0.9,en-US;q=0.8,en;q=0.7",
    "cache-control": "no-cache",
    "sec-ch-ua": "\"Google Chrome\";v=\"89\", \"Chromium\";v=\"89\", \";Not A Brand\";v=\"99\"",
    "sec-ch-ua-mobile": "?0",
    "sec-fetch-dest": "empty",
    "sec-fetch-mode": "cors",
    "sec-fetch-site": "same-site"
  },
  "referrer": "https://threatmap.checkpoint.com/",
  "referrerPolicy": "strict-origin-when-cross-origin",
  "body": null,
  "method": "GET",
  "mode": "cors",
  "credentials": "omit"
});

这是一个示例事件:
{"a_c":1,"a_n":"DNS Enforcement Violation","a_t":"exploit","d_co":"SE","d_la":63.8284,"d_lo":20.2597,"d_s":"AC","s_co":"US","s_lo":-73.9712,"s_la":40.7428,"s_s":"NY","t":null}

视觉上似乎意味着:

  • 描述:DNS 强制违规
  • 种类:利用
  • 目标国家/地区:SE/AC - 纬度/经度:63.8284、20.2597
  • 来源国家/地区:美国/纽约 - 纬度/经度:40.7428,-73.9712