Osintgram高级搜索语法:利用正则表达式优化查询结果

Osintgram高级搜索语法:利用正则表达式优化查询结果

【免费下载链接】Osintgram Osintgram is a OSINT tool on Instagram. It offers an interactive shell to perform analysis on Instagram account of any users by its nickname 【免费下载链接】Osintgram 项目地址: https://gitcode.com/gh_mirrors/os/Osintgram

你还在为Osintgram查询结果杂乱而烦恼?是否想精准定位目标用户的特定内容?本文将带你掌握正则表达式(Regular Expression,简称Regex)在Osintgram中的实战应用,让你5分钟内从海量数据中提取关键信息。读完本文,你将学会:基础正则语法在4个核心命令中的应用、3个进阶搜索场景、以及如何将结果导出为结构化数据。

正则表达式基础与工具准备

正则表达式是一种文本模式匹配工具,通过特殊字符组合实现精准搜索。在Osintgram中,虽然原生未直接提供正则输入框,但可通过命令行管道(Pipe)结合grep命令实现相同效果。以下是必备基础语法:

元字符含义示例
.匹配任意单个字符he..o 匹配 hello、helo
*匹配前一个字符0次或多次ab*c 匹配 ac、abc、abbc
+匹配前一个字符1次或多次ab+c 匹配 abc、abbc
?匹配前一个字符0次或1次ab?c 匹配 ac、abc
[]匹配括号内任意字符[Hh]ello 匹配 Hello、hello
()分组匹配(ab)+ 匹配 ab、abab
^行首匹配^# 匹配以#开头的行
$行尾匹配.com$ 匹配以.com结尾的行

环境准备:确保已安装Osintgram并熟悉基本命令,可参考doc/COMMANDS.md获取完整命令列表。推荐使用Linux/macOS终端,Windows用户需通过WSL运行。

核心命令与正则实战

1. captions:提取特定关键词的文案

captions命令用于获取目标用户的所有帖子文案(src/Osintgram.py)。结合正则可快速定位包含邮箱、电话或特定产品名的内容:

# 提取包含邮箱的文案(支持多种邮箱格式)
python3 main.py <target_username> --cli | grep -E '[A-Za-z0-9._%+-]+@[A-Za-z0-9.-]+\.[A-Z|a-z]{2,}'

# 查找包含"促销"或"优惠"的中文文案
python3 main.py <target_username> --cli | grep -E '促销|优惠'

2. hashtags:分析标签使用规律

hashtags命令返回目标用户使用的所有标签及频次(src/Osintgram.py#L445-L508)。通过正则筛选特定主题标签:

# 提取带年份的标签(如#2023旅行、#2024计划)
python3 main.py <target_username> --cli | grep -E '#[0-9]{4}[^\s#]+'

# 筛选英文标签(排除中文标签)
python3 main.py <target_username> --cli | grep -E '^#[A-Za-z0-9_]+$'

3. commentdata:精准定位评论内容

commentdata命令获取所有评论详情(src/Osintgram.py#L272-L312)。以下正则可提取手机号和URL:

# 提取电话号码(11位数字)
python3 main.py <target_username> --cli | grep -E '1[3-9][0-9]{9}'

# 匹配URL(支持http/https)
python3 main.py <target_username> --cli | grep -E 'https?://[^\s]+'

4. info:结构化解析用户资料

info命令返回用户详细信息(src/Osintgram.py#L510-L588)。结合正则提取关键数据:

# 提取 biography 中的社交媒体账号(如微信、微博)
python3 main.py <target_username> --cli | grep -E '微信|微博|wechat|weibo'

# 匹配 HD 头像URL
python3 main.py <target_username> --cli | grep -E 'https://[^\s]+\.(jpg|png)'

进阶场景:多命令组合与数据导出

场景1:批量分析评论用户

结合wcommented命令(src/Osintgram.py#L678-L735)和正则,筛选高频评论用户的特定模式:

# 导出评论超过5次的用户,并提取其用户名(字母+数字组合)
python3 main.py <target_username> --cli | grep -A 10 'wcommented' | grep -E '^[A-Za-z0-9_]+' | sort | uniq -c | sort -nr | head -10

场景2:时间范围筛选

利用captions中的时间戳(src/Osintgram.py#L194-L200)结合正则匹配特定年份内容:

# 查找2023年发布的包含"生日"的文案
python3 main.py <target_username> --cli | grep -E '2023-[0-9]{2}-[0-9]{2}.*生日'

场景3:结果导出为JSON

使用JSON=y参数(doc/COMMANDS.md)将筛选结果保存为JSON,便于后续分析:

# 导出带邮箱的评论为JSON
python3 main.py <target_username> --cli JSON=y | grep -E '"comment":.*[A-Za-z0-9._%+-]+@[A-Za-z0-9.-]+\.[A-Z|a-z]{2,}' > filtered_comments.json

注意事项与最佳实践

  1. 隐私合规:确保所有操作符合目标平台服务条款及当地法律法规,禁止用于非法用途。
  2. 性能优化:对大量数据(如1000+条评论),建议先导出为文件再本地分析:
    python3 main.py <target_username> --cli FILE=y  # 导出原始数据到output目录
    grep -E 'pattern' output/<target_username>_comment_data.txt  # 本地筛选
    
  3. 语法测试:推荐使用RegExr在线工具验证正则表达式,避免语法错误。

总结与展望

通过本文介绍的正则表达式技巧,你已能显著提升Osintgram数据筛选效率。核心命令配合正则的组合(如captions + grepcommentdata + JSON导出)可覆盖80%的分析需求。建议进一步探索tagged命令(src/Osintgram.py#L736-L740)的标签用户筛选,以及mediatype命令(src/Osintgram.py#L630-L677)的媒体类型统计。

收藏本文,下次分析时直接套用模板!如有更复杂的筛选需求,欢迎在评论区留言讨论。

提示:所有输出文件默认保存在output/<target_username>目录下(output/dont_delete_this_folder.txt),可通过FILE=n关闭文件导出。

【免费下载链接】Osintgram Osintgram is a OSINT tool on Instagram. It offers an interactive shell to perform analysis on Instagram account of any users by its nickname 【免费下载链接】Osintgram 项目地址: https://gitcode.com/gh_mirrors/os/Osintgram

创作声明:本文部分内容由AI辅助生成(AIGC),仅供参考

实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值