Python海量数据处理脚本大集合:pyWhat
pyWhat:精简海联数据,直达数据弱点要害- 精选真开源,释放新价值。

概览
pyWhat是Github社区上一款比较实用的开源Python脚本工具。它能够快速提取信息中的 IP 地址、邮箱、信用卡、数字货币钱包地址、YouTube 视频等内容。当你遇到了一串莫名其妙的文本,比如说“5f4dcc3b5aa765d61d8327deb882cf99”,而你又一头雾水的时候,你该怎么办?在pyWhat的帮助下,我们只需要询问what “5f4dcc3b5aa765d61d8327deb882cf99”,那么pyWhat就会告诉你你想知道的一切!pyWhat的任务就是帮助你识别目标数据,无论你提供的是文件还是文本,甚至是十六进制参数!不仅如此,pyWhat 还可对文件和目录进行扫描,通过递归搜索,快速获取核心信息,并对结果进行筛选、过滤、排序、导出等操作
主要功能
- Pcap文件快速分析
假设你在一次网络攻击活动中获取到了一个.pcap文件,那么pyWhat将可以快速帮助你识别下列信息:
| 所有的哈希 | 信用卡卡号 | 加密货币地址 |
|---|---|---|
| 社保号码 | … |
只需几秒钟,pyWhat就可以快速帮助你识别目标文件中的关键数据。

-
如何使用
$ pip3 install pywhat
installs optional dependencies that may improve the speed
$ pip3 install pywhat[optimize]
$ brew install pywhat
-
漏洞赏金
你可以使用 PyWhat 来扫描一些可以通过漏洞赏金计划赚钱的东西,例如:API 密钥、Webhook、证书
和更多的事务。使用以下命令运行 PyWhat:
pywhat --include "Bug Bounty" TEXT
示例:GitHub 存储库 API 密钥泄露
-
下载组织的所有 GitHub 存储库;
-
搜索任何可以作为赏金提交的内容,例如 API 密钥;
Download all repositories
GHUSER=CHANGEME; curl “https://api.github.com/users/$GHUSER/repos?per_page=1000” | grep -o ‘git@[^"]*’ | xargs -L1 git clone
Will print when it finds things.
Loops over all files in current directory.
find . -type f -execdir pywhat --include ‘Bug Bounty’ {} ;
示例: 扫描所有网页以寻找赏金
# Recursively download all web pages of a site
wget -r -np -k https://skerritt.blog# Will print when it finds things.
# Loops over all files in current directory.
find . -type f -execdir pywhat --include 'Bug Bounty' {} \;
- 排序、导出
排序:可以使用pyWhat对输出进行排序,使用what --help获取更多信息。
what -k rarity --reverse TEXT
导出:可以使用pyWhat导出为 json what --json,并且可以使用 将结果直接发送到文件what --json > file.json。
无边界模式:pyWhat具有一种特殊模式,用于匹配字符串中的可识别信息。默认情况下,它在 CLI 中启用,但在 API 中禁用。使用what --help或参考API文档https://github.com/bee-san/pyWhat/wiki/API了解更多信息。
- 性能比较与优化
在性能比较与优化方面,PyWhat库在文本解析任务中展现了出色的效率。以下是一些性能测试和优化建议,以帮助开发者更好地了解和提升PyWhat库的性能。
import time
from pywhat import what# 生成一个包含大量文本的列表
texts = ["文本内容" + str(i) for i in range(100000)]# 记录解析开始时间
start_time = time.time()# 在大量文本上执行解析操作
for text in texts:result = what(text)# 记录解析结束时间
end_time = time.time()# 计算解析时间
elapsed_time = end_time - start_time
print(f"解析 {len(texts)} 个文本的总时间: 0.0545 秒")
- 多语言支持
PyWhat库支持多种语言,使其更具国际化的特性。用户可以选择在文本解析中使用的语言,以确保对不同语种的支持。以下是一个使用语言选择的示例:
from pywhat import whattext = "明天天气如何?"
result = what(text, lang="zh") # 选择中文语言解析print(result)
- 自定义规则
PyWhat库允许用户定义自己的规则,以适应特定的文本解析需求。这对于处理特殊格式或特定领域的文本非常有用。以下是一个自定义规则的示例:
from pywhat import what, Ruletext = "根据自定义规则解析文本"
rule = Rule("自定义规则", ["自定义", "解析"])
result = what(text, custom_rules=[rule])print(result)
信息
截至发稿概况如下:
-
软件地址:https://github.com/bee-san/pyWhat
-
软件协议: MIT license
-
编程语言:
| 语言 | 占比 |
|---|---|
| Python | 99.7% |
| Dockerfile | 0.3% |
- 收藏数量:6.4K
pyWhat是一款强大的开源Python工具,它在信息识别与数据分析领域展示了高度的灵活性与实用性。该工具能够智能解析文本或文件中的各种关键信息,比如IP地址、电子邮件、信用卡号乃至加密货币钱包地址等,显著提升了从复杂数据中提取价值的效率。对于安全研究人员而言,其快速分析Pcap文件的能力,以及在漏洞赏金狩猎场景中的应用尤为突出,能够帮助用户自动化发现API密钥、Webhook配置等敏感信息,有效促进网络安全的维护。
随着数据量的爆炸性增长,如何进一步优化像pyWhat这类工具的性能,使其在保持高速解析能力的同时,又能兼顾资源消耗与跨平台兼容性?此外,用户自定义规则的潜力如何被充分挖掘,以应对日新月异的互联网信息格式与安全挑战,也是值得深入探讨的话题。
各位在使用 PyWhat 的过程中是否发现了什么问题?热烈欢迎各位在评论区分享交流心得与见解!!!
声明:本文为辣码甄源原创,转载请标注"辣码甄源原创首发"并附带原文链接。
相关文章:
Python海量数据处理脚本大集合:pyWhat
pyWhat:精简海联数据,直达数据弱点要害- 精选真开源,释放新价值。 概览 pyWhat是Github社区上一款比较实用的开源Python脚本工具。它能够快速提取信息中的 IP 地址、邮箱、信用卡、数字货币钱包地址、YouTube 视频等内容。当你遇到了一串莫名…...
postgresql搭建
搭建postgresql-11.3,和客户端工具 1,准备对应的包,右键直接下一步安装完即可, 将postgresql设置为本地服务,方便启动, 2,用对应客户端软件连接,新建一个数据库controlDB 新建用户…...
Web 品质标准
Web 品质标准 引言 随着互联网的快速发展,Web应用已经渗透到我们生活的方方面面。为了确保Web应用的质量,提高用户体验,Web品质标准应运而生。这些标准涵盖了多个方面,包括性能、安全性、可访问性、用户体验等。本文将详细介绍这些标准,并探讨它们在实际开发中的应用。 …...
深入理解PyTorch:原理与使用指南
文章目录 引言一、PyTorch的原理1. 动态计算图2. 自动微分3. 张量计算4. 高效的并行计算 二、PyTorch的使用1. 环境配置2. 加载数据3. 构建模型4. 训练模型5. 验证和测试模型 三、PyTorch的安装与配置四、PyTorch的使用示例总结 引言 在深度学习和机器学习的广阔领域中&#x…...
【MySQL事务】深刻理解事务隔离以及MVCC
文章目录 什么叫事务事务的提交方式常见的事务操作方式事务的开始与回滚总结 事务的隔离设置隔离级别解释脏读解释幻读解释不可重复读为什么可重复读不能解决幻读问题?总结 数据库并发的场景MVCC隐藏列字段undo日志Read view RR和RC的本质区别总结 什么叫事务 在My…...
关于Mac mini 10G网口的问题
问题: 购入一个10G网口的Mac mini M2,将其和自己的2.5G交换机连接,使用共享屏幕进行远程操作的过程中出现了频率极高的卡顿,几乎是几秒钟卡一下,使用ping进行测试发现卡的时候就ping不通了。测试使用Mac mini的无线网和雷电转2.5G…...
计算机网络-第4章 网络层
4.1网络层的几个重要概念 4.1.1网络层提供的两种服务 电信网面向连接通信方式,虚电路VC。 互联网设计思路:网络层要设计得尽量简单,向其上层只提供简单灵活的,尽最大努力交付的数据报服务。 网络层不提供服务质量的承诺&#…...
pytorch跑手写体实验
目录 1、环境条件 2、代码实现 3、总结 1、环境条件 pycharm编译器pytorch依赖matplotlib依赖numpy依赖等等 2、代码实现 import torch import torch.nn as nn import torch.optim as optim import torchvision import torchvision.transforms as transforms import matpl…...
利用Java的`java.util.concurrent`包优化多线程性能
利用Java的java.util.concurrent包优化多线程性能 一、引言 在Java的多线程编程中,性能优化是一个永恒的话题。随着多核CPU的普及和计算任务的日益复杂,多线程编程已经成为提高应用程序性能的重要手段。然而,多线程编程也带来了一系列的问题…...
软件著作权申请:开发者的重要保障与助力
一、引言 随着信息技术的飞速发展,软件产业已成为推动经济增长的重要动力。然而,在软件开发过程中,保护创作者的权益、防止抄袭和侵权行为显得尤为重要。软件著作权作为保护软件开发者权益的重要法律工具,其申请和登记流程对于软…...
WLAN Hostapd配置参数详解 - CN
想必大家平台在调试Hostapd时,针对某些特殊的参数,很难一下子理清楚其用法,这里对hostapd使用的配置参数进行一个归纳,以供大家参考( 其英文参考为:WLAN Hostapd配置参数详解 - EN-CSDN博客)&am…...
Excel 宏录制与VBA编程 ——VBA编程技巧篇一 (Union方法、Resize方法、Cells方法、UseSelect方法、With用法)
Uniom方法 使用Union方法可以将多个非连续区域连接起来成为一个区域,从而可以实现对多个非连续区域一起进行操作。 Resize方法 使用Range对象的Resize属性调整指定区域的大小,并返回调整大小后的单元格区域。 Cells方法 Cells属性返回一个Range对象。 Us…...
基于路径长度的样条插补算法(自动驾驶和路径跟踪控制适用)
以前在做车辆跟踪控制的时候发现在针对有多个X和多个Y对应的路径插补时候,总是报错,因为MATLAB里面的interp1插补函数它要求x要唯一对应一个y,当路径以单独的x或者y来求插补时候的时候就报错。由于在使用Matlab的interp1函数进行插值时&#…...
net Framework OAuth2.0
grant_type client_credentials 客户端凭证password 密码模式 用于资源所有者密码凭据token 隐藏式 、 简化式 简化模式又称为隐式授权码模式,它是授权码模式的一个简化版本authorization_code 授权码 A. 第三方程序向资源拥有者(用户)发送授权请求…...
速盾:服务器cdn加速超时如何解决?
CDN(Content Delivery Network,内容分发网络)是一种将网站内容分布到全球各地服务器上的技术,以提高网站的访问速度和用户体验。然而,在使用CDN时,有时候会遇到服务器CDN加速超时的问题,即CDN服…...
2024年6月总结及随笔之打卡网红点
1. 回头看 日更坚持了547天。 读《人工智能时代与人类未来》更新完成读《AI未来进行式》开更并更新完成读《AI新生:破解人机共存密码》开更并持续更新 2023年至2024年6月底累计码字1267912字,累计日均码字2317字。 2024年6月码字90659字,…...
《Windows API每日一练》7.4 状态报告上使用计时器
这一节我们使用计时器,每隔一秒获取当前鼠标坐标位置的像素值,并显示在窗口,这就相当于是一个简单的取色器了。 本节必须掌握的知识点: 第47练:取色器 7.4.1 第47练:取色器 /*----------------------------…...
python实现API调用缓存
python实现API调用缓存 1.代码2.输出3.保存的json数据 想把python某些函数的参数及返回值记录下来,如果之前已计算过,则直接返回缓存中的数据 1.代码 import jsondef get_variable_name(var):变量转变量名local_varsglobals()return [name for name, value in local_vars.ite…...
传输距离3000M|低延迟|48K采样音频传输模块-SA356大功率发射模块
无线音频应用中,远距离音频传输在许多领域具有广泛的应用需求,例如大型会议系统、公共广播、户外活动和音乐演出等。为了满足这些需求,音频传输模块需要具备一些关键特性,包括长距离传输能力、高音质、低延迟、稳定性以及抗干扰能…...
前端css性能优化
前端css性能优化 1. 减少样式表数量和压缩文件大小: 通过合并多个样式表、删除未使用的样式、压缩样式表等方式来减少样式表数量和大小,从而减少网络请求和提高加载速度。 通常来说,样式文件会被浏览器缓存,进入到其他页面样式文件…...
Lombok 的 @Data 注解失效,未生成 getter/setter 方法引发的HTTP 406 错误
HTTP 状态码 406 (Not Acceptable) 和 500 (Internal Server Error) 是两类完全不同的错误,它们的含义、原因和解决方法都有显著区别。以下是详细对比: 1. HTTP 406 (Not Acceptable) 含义: 客户端请求的内容类型与服务器支持的内容类型不匹…...
Auto-Coder使用GPT-4o完成:在用TabPFN这个模型构建一个预测未来3天涨跌的分类任务
通过akshare库,获取股票数据,并生成TabPFN这个模型 可以识别、处理的格式,写一个完整的预处理示例,并构建一个预测未来 3 天股价涨跌的分类任务 用TabPFN这个模型构建一个预测未来 3 天股价涨跌的分类任务,进行预测并输…...
Nginx server_name 配置说明
Nginx 是一个高性能的反向代理和负载均衡服务器,其核心配置之一是 server 块中的 server_name 指令。server_name 决定了 Nginx 如何根据客户端请求的 Host 头匹配对应的虚拟主机(Virtual Host)。 1. 简介 Nginx 使用 server_name 指令来确定…...
深入解析C++中的extern关键字:跨文件共享变量与函数的终极指南
🚀 C extern 关键字深度解析:跨文件编程的终极指南 📅 更新时间:2025年6月5日 🏷️ 标签:C | extern关键字 | 多文件编程 | 链接与声明 | 现代C 文章目录 前言🔥一、extern 是什么?&…...
【从零学习JVM|第三篇】类的生命周期(高频面试题)
前言: 在Java编程中,类的生命周期是指类从被加载到内存中开始,到被卸载出内存为止的整个过程。了解类的生命周期对于理解Java程序的运行机制以及性能优化非常重要。本文会深入探寻类的生命周期,让读者对此有深刻印象。 目录 …...
push [特殊字符] present
push 🆚 present 前言present和dismiss特点代码演示 push和pop特点代码演示 前言 在 iOS 开发中,push 和 present 是两种不同的视图控制器切换方式,它们有着显著的区别。 present和dismiss 特点 在当前控制器上方新建视图层级需要手动调用…...
【Android】Android 开发 ADB 常用指令
查看当前连接的设备 adb devices 连接设备 adb connect 设备IP 断开已连接的设备 adb disconnect 设备IP 安装应用 adb install 安装包的路径 卸载应用 adb uninstall 应用包名 查看已安装的应用包名 adb shell pm list packages 查看已安装的第三方应用包名 adb shell pm list…...
提升移动端网页调试效率:WebDebugX 与常见工具组合实践
在日常移动端开发中,网页调试始终是一个高频但又极具挑战的环节。尤其在面对 iOS 与 Android 的混合技术栈、各种设备差异化行为时,开发者迫切需要一套高效、可靠且跨平台的调试方案。过去,我们或多或少使用过 Chrome DevTools、Remote Debug…...
Ubuntu系统多网卡多相机IP设置方法
目录 1、硬件情况 2、如何设置网卡和相机IP 2.1 万兆网卡连接交换机,交换机再连相机 2.1.1 网卡设置 2.1.2 相机设置 2.3 万兆网卡直连相机 1、硬件情况 2个网卡n个相机 电脑系统信息,系统版本:Ubuntu22.04.5 LTS;内核版本…...
Python实现简单音频数据压缩与解压算法
Python实现简单音频数据压缩与解压算法 引言 在音频数据处理中,压缩算法是降低存储成本和传输效率的关键技术。Python作为一门灵活且功能强大的编程语言,提供了丰富的库和工具来实现音频数据的压缩与解压。本文将通过一个简单的音频数据压缩与解压算法…...
