我对网页抓取还很陌生。静态内容很容易,但我想知道是否有办法抓取这样的网站: https://threatmap.checkpoint.com/
我需要从该站点抓取所有实时攻击。但我什至不知道如何开始。
答案 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}
视觉上似乎意味着: