开源情报之领英人脸情报收集,如何快速收集上亿张人脸情报

2023-10-19 20:37

本文主要是介绍开源情报之领英人脸情报收集,如何快速收集上亿张人脸情报,希望对大家解决编程问题提供一定的参考价值,需要的开发者们随着小编来一起学习吧!

一.前言
先看应用例子:
残忍至极!乌克兰用人脸识别战死俄军,联系母亲打“心理战”
情报机构,所掌握的数据,可以是市面上流出的任何数据,比如市面上泄露的领英数据,facebook,twitter,这些数据可以作为开源情报的基础数据之一,用来将互联网与个人实体联系起来
所有的技术,第一服务目标是暴力,如果你是一个程序员,如何构建一个能联系起现实的庞大数据库,通过触手可及的互联网内容。先展示我的成果,再来讲述技术:
已经成功收集了几千万张这类头像

二.技术实现
SeetaFace6,爬虫
领英已经实现了严格的反爬措施,要爬取6亿条用户的头像,那就要找一个相对于好的弱项进行攻破;已知领英开发团队来之meta,meta程序员好给每个用户搞多个接口返回用户信息,例如badges页面,可以通过该页面,获取无穷无尽的用户头像
1.实现第一步,获取领英的账号地址,如果你是出色的情报人员,你手上应该有已经有了上亿的领英用户主页地址了,如果没有,你可以自己使用程序进行爬取,或者通过灰色渠道,这里写如何通过爬虫爬取:
爬虫实现技术,java selenium,使用现成领英账号登录后进行爬取
如何实现selenium的登录控制与特征抹除:

package com.util;
import org.openqa.selenium.Dimension;
import org.openqa.selenium.PageLoadStrategy;
import org.openqa.selenium.WebDriver;
import org.openqa.selenium.chrome.ChromeDriver;
import org.openqa.selenium.chrome.ChromeOptions;
import org.openqa.selenium.logging.LogType;
import org.openqa.selenium.logging.LoggingPreferences;
import org.openqa.selenium.net.ChromeDriverProxy;
public class WebDriverTool {/*** 获取web驱动* * @return 浏览器驱动*/public ChromeDriver getWebDriver(String username) {System.setProperty("webdriver.chrome.driver", com.util.PropertyUtil.getvalue("chromedriver"));// 指定驱动路径// 设置浏览器参数ChromeOptions options = new ChromeOptions();Map<String, Object> prefs = new HashMap<String, Object>();prefs.put("credentials_enable_service", false);prefs.put("profile.password_manager_enabled", false);prefs.put("profile.password_manager_enabled", false);options.addArguments("user-data-dir=C:\\chrome\\"+username);//指定浏览器的运行文件存储地,领英账号登录后就可以保持长久的会话了/**excludeSwitches", Arrays.asList("enable-automation")在高版本的谷歌浏览器是无法屏蔽window.navigator.webdriver 为false 的特征,这里写出来是为了配合其他参数来关闭浏览器上显示"正在收到自动测试软件控制"的提示**/options.setExperimentalOption("excludeSwitches", Arrays.asList("enable-automation"));options.addArguments("--disable-blink-features");options.addArguments("--disable-blink-features=AutomationControlled");options.setExperimentalOption("useAutomationExtension", false);//options.addArguments("blink-settings=imagesEnabled=false");options.setExperimentalOption("prefs", prefs);// 创建驱动对象ChromeDriver driver = new ChromeDriver(options);//ChromeDriverProxy driver=new ChromeDriverProxy(options);driver.manage().window().setSize(new Dimension(1280, 1024));// 去除seleium全部指纹特征FileReader fileReader = new FileReader("C:\\lurk.js");String js = fileReader.readString();// MapBuilder是依赖hutool工具包的apiMap<String, Object> commandMap = MapBuilder.create(new LinkedHashMap<String, Object>()).put("source", js).build();// executeCdpCommand这个api在selenium3中是没有的,请使用selenium4才能使用此api((ChromeDriver) driver).executeCdpCommand("Page.addScriptToEvaluateOnNewDocument", commandMap);return driver ;}}

lurk.js 文件是控制特征去除的js片段,下载地址:https://download.csdn.net/download/qq_19383667/88444628
使用selenium进行账号登录后,找到:https://sg.linkedin.com/in/li-hao-74581548 这个页面,你会发现,只需要知道领英用户主页地址,即可快速批量的获得用户的头像文件,而且访问一个地址,你就能获取几十张额外的头像与用户主页地址

同名推荐
url对应的正主
同公司地域行业的推荐
到这里基本上能完成很多头像的收集

2.SeetaFace6实现头像切割与特征收集
该项目java版地址:https://gitee.com/cnsugar/seetaface6JNI,特征识别方法为:

try {BufferedImage user = ImageIO.read(new File(downpath));if (user != null) {float[] s = FaceHelper.extractMaxFace(user);ArrayList<Float> list = new ArrayList<Float>();if (s != null) {for (int i = 0; i < s.length; i++) {list.add(s[i]);}JSONArray maxfacecode = JSONArray.fromObject(list);maxfacecode_str = maxfacecode.toString();//数字化的人脸特征值,后期直接可用用作人脸对比}}} catch (IOException e) {// TODO Auto-generated catch blocke.printStackTrace();}

这里已经能收集很多人脸的数据了,领英的价值在于可以将该处人脸特征作为基础数据,与推特,facebook社交内容做交互,快速识别人员身份

这篇关于开源情报之领英人脸情报收集,如何快速收集上亿张人脸情报的文章就介绍到这儿,希望我们推荐的文章对编程师们有所帮助!



http://www.chinasem.cn/article/242211

相关文章

SpringBoot快速接入OpenAI大模型的方法(JDK8)

《SpringBoot快速接入OpenAI大模型的方法(JDK8)》本文介绍了如何使用AI4J快速接入OpenAI大模型,并展示了如何实现流式与非流式的输出,以及对函数调用的使用,AI4J支持JDK8... 目录使用AI4J快速接入OpenAI大模型介绍AI4J-github快速使用创建SpringBoot

使用Python快速实现链接转word文档

《使用Python快速实现链接转word文档》这篇文章主要为大家详细介绍了如何使用Python快速实现链接转word文档功能,文中的示例代码讲解详细,感兴趣的小伙伴可以跟随小编一起学习一下... 演示代码展示from newspaper import Articlefrom docx import

shell脚本快速检查192.168.1网段ip是否在用的方法

《shell脚本快速检查192.168.1网段ip是否在用的方法》该Shell脚本通过并发ping命令检查192.168.1网段中哪些IP地址正在使用,脚本定义了网络段、超时时间和并行扫描数量,并使用... 目录脚本:检查 192.168.1 网段 IP 是否在用脚本说明使用方法示例输出优化建议总结检查 1

Rust中的Option枚举快速入门教程

《Rust中的Option枚举快速入门教程》Rust中的Option枚举用于表示可能不存在的值,提供了多种方法来处理这些值,避免了空指针异常,文章介绍了Option的定义、常见方法、使用场景以及注意事... 目录引言Option介绍Option的常见方法Option使用场景场景一:函数返回可能不存在的值场景

JS常用组件收集

收集了一些平时遇到的前端比较优秀的组件,方便以后开发的时候查找!!! 函数工具: Lodash 页面固定: stickUp、jQuery.Pin 轮播: unslider、swiper 开关: switch 复选框: icheck 气泡: grumble 隐藏元素: Headroom

电脑桌面文件删除了怎么找回来?别急,快速恢复攻略在此

在日常使用电脑的过程中,我们经常会遇到这样的情况:一不小心,桌面上的某个重要文件被删除了。这时,大多数人可能会感到惊慌失措,不知所措。 其实,不必过于担心,因为有很多方法可以帮助我们找回被删除的桌面文件。下面,就让我们一起来了解一下这些恢复桌面文件的方法吧。 一、使用撤销操作 如果我们刚刚删除了桌面上的文件,并且还没有进行其他操作,那么可以尝试使用撤销操作来恢复文件。在键盘上同时按下“C

阿里开源语音识别SenseVoiceWindows环境部署

SenseVoice介绍 SenseVoice 专注于高精度多语言语音识别、情感辨识和音频事件检测多语言识别: 采用超过 40 万小时数据训练,支持超过 50 种语言,识别效果上优于 Whisper 模型。富文本识别:具备优秀的情感识别,能够在测试数据上达到和超过目前最佳情感识别模型的效果。支持声音事件检测能力,支持音乐、掌声、笑声、哭声、咳嗽、喷嚏等多种常见人机交互事件进行检测。高效推

金融业开源技术 术语

金融业开源技术  术语 1  范围 本文件界定了金融业开源技术的常用术语。 本文件适用于金融业中涉及开源技术的相关标准及规范性文件制定和信息沟通等活动。

安全管理体系化的智慧油站开源了。

AI视频监控平台简介 AI视频监控平台是一款功能强大且简单易用的实时算法视频监控系统。它的愿景是最底层打通各大芯片厂商相互间的壁垒,省去繁琐重复的适配流程,实现芯片、算法、应用的全流程组合,从而大大减少企业级应用约95%的开发成本。用户只需在界面上进行简单的操作,就可以实现全视频的接入及布控。摄像头管理模块用于多种终端设备、智能设备的接入及管理。平台支持包括摄像头等终端感知设备接入,为整个平台提

hdu 4565 推倒公式+矩阵快速幂

题意 求下式的值: Sn=⌈ (a+b√)n⌉%m S_n = \lceil\ (a + \sqrt{b}) ^ n \rceil\% m 其中: 0<a,m<215 0< a, m < 2^{15} 0<b,n<231 0 < b, n < 2^{31} (a−1)2<b<a2 (a-1)^2< b < a^2 解析 令: An=(a+b√)n A_n = (a +