Skill flagged — suspicious patterns detected

ClawHub Security flagged this skill as suspicious. Review the scan results before using.

学术人员邮箱批量搜索工具

v1.0.0

学术人员邮箱批量搜索工具。从姓名+单位出发,通过搜索引擎自动查找学术人员的邮箱地址,结果写入Excel文件。 触发词:邮箱搜索、学术邮箱、批量找人、email搜索、搜邮箱

0· 95·0 current·0 all-time

Install

OpenClaw Prompt Flow

Install with OpenClaw

Best for remote or guided setup. Copy the exact prompt, then paste it into OpenClaw for chaoliuzhu/academic-email-finder.

Previewing Install & Setup.
Prompt PreviewInstall & Setup
Install the skill "学术人员邮箱批量搜索工具" (chaoliuzhu/academic-email-finder) from ClawHub.
Skill page: https://clawhub.ai/chaoliuzhu/academic-email-finder
Keep the work scoped to this skill only.
After install, inspect the skill metadata and help me finish setup.
Use only the metadata you can verify from ClawHub; do not invent missing requirements.
Ask before making any broader environment changes.

Command Line

CLI Commands

Use the direct CLI path if you want to install manually and keep every step visible.

OpenClaw CLI

Bare skill slug

openclaw skills install academic-email-finder

ClawHub CLI

Package manager switcher

npx clawhub@latest install academic-email-finder
Security Scan
VirusTotalVirusTotal
Benign
View report →
OpenClawOpenClaw
Suspicious
medium confidence
Purpose & Capability
名字/描述与SKILL.md中行为一致:从姓名+单位通过网络搜索收集学术邮箱并写回Excel。但SKILL.md 包含 Python 代码示例(openpyxl、re、web_search 操作、PDF 检索等),技能声明却没有列出任何依赖或运行时要求,实际运行需要 Python 环境、openpyxl 以及可进行 web_search 的能力/接口。未声明的依赖降低可用性并可能导致误解。
!
Instruction Scope
指令限定为读取用户提供的 Excel、对每条记录执行搜索并写回本地文件,未指示访问其他敏感路径或环境变量——这是符合其用途的。但指令缺少重要约束:没有任何关于速率限制、并发控制、遵守 robots.txt 或网站服务条款的说明;也未说明怎样处理需要登录/付费数据库。大量自动化搜索可能触及法律/反滥用与隐私风险。
Install Mechanism
这是一个仅包含说明文档的 instruction-only skill(无安装脚本),因此不会在安装时写磁盘或下载代码——风险较低。但因为 SKILL.md 自带 Python 示例并依赖 openpyxl 和 web_search 能力,实际运行依赖宿主平台提供这些库/能力;缺乏明确依赖声明是可用性和安全审核上的一个缺口。
Credentials
技能不要求任何环境变量、凭据或配置路径,也不请求权限超出其职能范围。所需的输入为用户提供的本地 Excel 文件路径,输出写回本地文件,未声明外部凭据或秘密,环境/凭据请求与功能比例合理。
Persistence & Privilege
flags 显示 always:false,技能为用户触发的单次任务型,且默认允许模型调用。技能不会要求常驻或修改其他技能配置,持久性/特权请求合理。
What to consider before installing
在决定安装或运行前请考虑并采取以下措施: - 依赖与运行环境:确认执行该技能的平台提供 Python 及所需库(至少 openpyxl),并确保有可用的 web_search/网络访问能力。技能文档未声明这些依赖,缺一则无法正常运行。 - 备份文件:该流程会直接打开并保存用户提供的 Excel(覆盖写入)。在运行前先备份原文件,或改为先保存到新文件路径以防数据丢失。 - 合规与礼貌抓取:自动化大规模爬取邮件可能违反目标网站的 robots.txt、服务条款或隐私法规。明确限制速率、并发、增加重试/错误处理,并遵守目标网站的抓取规范;对付费数据库(知网/万方等)不要尝试绕过认证。 - 人工复核与样本验证:文档已指出同名问题;务必按建议对若干样本人工核对,尤其是容易混淆的同名记录。 - 安全与滥用风险:收集大量学术邮箱可能被用于垃圾邮件或其他滥用。确认用途合法且合规,并限制导出/共享结果的范围。 - 代码质量提示:示例中的 extract_email 实现会返回遇到的第一个非个人邮箱或第一个匹配项,逻辑简单,可能误判或漏掉更合适的邮箱。建议在部署前进行小规模测试并改进优先级/去重逻辑。 如果你需要,我可以帮你:(1)列出需要在宿主环境中安装的具体 Python 包和命令;(2)给出速率限制/并发控制与 robots.txt 检查的实现建议;或(3)审阅或改写提取邮箱的代码以减少误判。

Like a lobster shell, security has layers — review code before you run it.

latestvk97dzvszje9zcmbxnwcvpb72c9858xq8
95downloads
0stars
1versions
Updated 6d ago
v1.0.0
MIT-0

学术人员邮箱批量搜索工具

版本:v1.0 用途:根据姓名+单位,自动从全网搜索学术人员邮箱 定位:单次任务型Skill,不驻留后台


能力概述

输入: Excel文件(含姓名列+单位列) 输出: 在原文件新增一列"邮箱",逐行填入搜索到的地址


工作流程

1. 用户提供Excel文件路径 + 说明哪列是姓名、哪列是单位
2. 解析Excel,提取所有姓名+单位对
3. 对每条记录执行搜索:
   搜索词:「姓名 + 单位 + 教授/老师/讲师 + 邮箱」
4. 从搜索结果摘要中识别邮箱(正则匹配)
5. 优先保留官方域名邮箱(.edu.cn / .cn / .gov.cn)
6. 排除qq.com / 163.com 等个人邮箱(除非无更好选择)
7. 将邮箱写入指定列
8. 输出完成后的文件路径

搜索策略(三层级)

第1层:高校/机构官网教师主页

搜索词格式:
「{姓名} {单位} 教授 邮箱」
「{姓名} {单位} 副教授 邮箱」
「{姓名} {单位} 讲师 邮箱」
「{姓名} {单位} 导师 邮箱」
「{姓名} {单位} 研究生导师 email」

命中目标:xx大学人事处/研究生院/院系官网的教师主页

第2层:学术平台个人主页

搜索词格式:
「{姓名} {单位} email」
「{姓名} 研究方向 email」
「{姓名} {单位} 通讯作者」

命中目标:ResearchGate / Google Scholar / CNKI / 百度学术

第3层:论文PDF中的通讯作者邮箱

搜索词格式:
「{姓名} {单位} 论文 PDF」
「{姓名} {论文标题片段} 邮箱」

命中目标:论文PDF里通常标注通讯作者邮箱

邮箱识别规则

import re

def extract_email(text):
    """从文本中提取邮箱地址"""
    # 匹配标准邮箱格式
    pattern = r'[a-zA-Z0-9._%+\-]+@[a-zA-Z0-9.\-]+\.[a-zA-Z]{2,}'
    matches = re.findall(pattern, text)

    # 优先级排序
    priority_domains = ['.edu.cn', '.gov.cn', '.ac.cn', '.cn', '.org']
    personal_domains = ['qq.com', '163.com', '126.com', 'gmail.com', 'hotmail.com', 'outlook.com']

    for email in matches:
        domain = email.split('@')[1].lower()
        # 跳过个人邮箱
        if any(pd in domain for pd in personal_domains):
            continue
        # 优先机构邮箱
        if any(pd in domain for pd in priority_domains):
            return email
        # 没有机构邮箱则退而求其次
        return email if matches else None

    return matches[0] if matches else None

Excel操作规范

import openpyxl

def write_email_to_excel(file_path, row_number, email, email_column=6):
    """将邮箱写入Excel

    Args:
        file_path: Excel文件路径
        row_number: 数据行号(1-based,含表头)
        email: 邮箱地址,没找到填"未找到"
        email_column: 邮箱列号(默认F列=6)
    """
    wb = openpyxl.load_workbook(file_path)
    ws = wb.active
    ws.cell(row=row_number, column=email_column, value=email)
    wb.save(file_path)

局限性说明

渠道可用性备注
高校官网教师主页✅ 优先命中信息公开,覆盖率较高
科研机构官网✅ 可用研究院/医院等
学术平台✅ 辅助CNKI/Google Scholar/ResearchGate
论文通讯作者✅ 可用仅限通讯作者,且需能找到论文
百度/Google直接搜⚠️ 辅助可能搜到多个同名学者,需核对
付费数据库❌ 不可用知网/万方需账号

已知风险:

  • 同名不同人:搜索"林也平 湖南大学"可能匹配到"林亚平"(重名)→ 需要人工复核
  • 冷门学者:小众院校/地方机构可能官网不公开信息
  • 个人信息保护:部分学者主动隐藏邮箱
  • 覆盖上限:非高校机构(医院/国企/地方政府)官网往往没有教师主页

建议:搜索完成后抽样验证(随机取5-10条用搜索引擎复核)


使用示例

场景:用户提供Excel,需要填邮箱

Step 1:用户提供文件

文件路径:/tmp/people.xlsx
姓名列:B列(第2列)
单位列:C列(第3列)
邮箱写入列:F列(第6列)

Step 2:解析文件

import openpyxl
wb = openpyxl.load_workbook('/tmp/people.xlsx')
ws = wb.active
people = []
for i, row in enumerate(ws.iter_rows(min_row=2, values_only=True)):
    name = row[1]  # B列
    unit = row[2]  # C列
    if name:
        people.append({'row': i+2, 'name': name, 'unit': unit})

Step 3:逐条搜索(子Agent自动化)

对每条记录:
  → web_search:「{name} {unit} 邮箱」
  → 提取邮箱
  → 写入 F列
  → 每20条汇报一次进度

Step 4:输出结果

/tmp/people_with_emails.xlsx

快速启动命令

如需立即对某个Excel运行搜索,复制以下提示词给子Agent:

你是一个邮件地址搜索机器人。任务:根据名单逐一搜索学术人员的邮箱地址。

## 输入文件
读取 /tmp/people_list.json,里面有N条记录,格式:
[{"row": 行号, "name": "姓名", "unit": "单位", "title": "论文标题"}, ...]

## 任务流程
对每一条记录:
1. web_search 搜索「姓名 + 单位 + 教授/老师 + 邮箱」
2. 从搜索结果中提取邮箱地址(格式:xxx@domain.com)
3. openpyxl 将邮箱写入 /tmp/target.xlsx 的第6列(F列)
4. 行号对应:第row行
5. 找到写入邮箱,没找到写入"未找到"
6. 每20人输出进度

## 邮箱识别
- 优先.edu.cn / .ac.cn等机构域名
- 排除qq.com / 163.com等个人邮箱
- 同名不同人时选择最匹配的

## 输出
覆盖保存 /tmp/target.xlsx
最后输出统计:找到X个,未找到Y个

版本历史

v1.0

  • ✅ 基本搜索流程
  • ✅ 三层搜索策略
  • ✅ 邮箱正则识别
  • ✅ Excel读写
  • ⚠️ 同名区分需人工复核

Skill版本:v1.0 创建:小柱(ArkClaw) 最后更新:2026-04-21 用途:学术人员邮箱批量采集

Comments

Loading comments...