高效词频分析

由于密码泄露越来越普遍,使得各类“密码分析”工具越来越多。比如最近很火的Pipal,由ruby编写的一款程序,可以分析出密码频率TOP N。但实际使用中发现效率较低。

实际上通过简单的bash命令就可以实现上述的功能:

cat password.txt | sort | uniq -c | sort -k1,1nr | head -10

提取password词频TOP10的密码

time cat pass.txt | sort | uniq -c | sort -k1,1nr | head -10 > result.txt
保存提取结果并记录所消耗时间

由于sort是C语言编写,效率远高于Pipal。在数据量较大的词频统计时,差距尤其明显。
实际测试 在虚拟机中两亿条数据获取top 10000 大概50分钟左右。

时间: 2024-10-12 02:51:40

高效词频分析的相关文章

唐诗三百首分词词频分析

发现本博客的文章也有随意转载了,而且排名还比原文高.所以加上申明,本文不得转载. http://www.cnblogs.com/cartler ? 下面是正文,看到微博上词频分析很火,自己也试了下. 过程很简单,但结果很有趣,所以先上结果. 成果基本可以由下面这首"唐诗"概括,o(≧v≦)o~~好棒~ ? 不见万里在何处 琵琶明月尤不知 不得春风思故人 长安将军今无人 ? 出现频率最高的如下: ? 从结果还可以分析出一些东西: 比如:蜀道之难难于上青天,仅仅这一句就出现过三次,[出典]

结对-英文词频分析-开发环境搭建过程

结对成员: 学号: 2015035107109 学号: 2015035107059 结对项目:英文词频分析 开发语言:Python3.x 开发环境:Pycharm 系统:windows 下载双击安装即可.

python实例:三国演义TXT文本词频分析

0x00 前言 找不到要写什么东西了!今天有个潭州大牛讲师  说了个  文本词频分析 我基本上就照抄了一遍 中间遇到一些小小的问题 自我百度 填坑补全了  如下 : 效果演示 0x01   准备环境及介绍 python3.x版本   随意 安装jieba库 pip install jieba jieba三种模式: 1.精准模式 lcut函数,返回一个分词列表 2.全模式 3.搜索引擎模式 词频: <单词>:<出现次数>的键值对 IPO描述 imput output process

词频分析

词频分析,分析一段文字或者一段话每个单词出现的频率.对于英文文章,我们可以使用split()函数进行文章段落的切割,对于中文,我们可以使用jieba库进行文章段落的分割. import jieba # jieba提供三种分词模式 txt = "中华人民共和国万岁,中国共-产-党万岁,中国人民万岁!" words1 = jieba.lcut(txt) words2 = jieba.lcut(txt, cut_all=True) words3 = jieba.lcut_for_search

R语言学习-词频分析

概念 1.语料库-Corpus 语料库是我们要分析的所有文档的集合,就是需要为哪些文档来做词频 2.中文分词-Chinese Word Segmentation 指的是将一个汉字序列切分成一个一个单独的词语. 3.停用词-Stop Words 数据处理的时候,自动过滤掉某些字或词,包括泛滥的词如Web.网站等,又如语气助词如的.地.得等. 需要加载的包 1.tm包 安装方式:install.packages("tm") 语料库: Corpus(x,readerControl) x-语料

结巴中文词频分析

结果保存在result.txt文档内 # -*- coding: utf-8 -*- import jieba import sys from collections import Counter import jieba.analyse filename="招聘分析.txt" def fenci(filename) : f = open(filename,'r+') file_list = f.read() f.close() seg_list = list(jieba.cut(fi

如何高效地分析Android_log中的问题?——查看Android源码

在日常解bugs时,需要通过log日志来分析问题,例如查看crash发生时的堆栈信息时,就会有Android的源码的调用,这是就要去查看Android源码. 1.进入Android源码网址查看,例如 http://androidxref.com/ 2.选择对应的Android版本,例如Android 4.4 3.选择framework,在File Path中输入类名,点击Search,选择对应的类名. 4.查看Android源码!

十九大报告词频分析

1.准备工作 环境要求:Jupyter.python3.7,jieba库 2.python代码 #! python3 # -*- coding: utf-8 -*- import os, codecs import jieba from collections import Counter def get_words(txt): seg_list = jieba.cut(txt) #对文本进行分词 c = Counter() for x in seg_list: #进行词频统计 if len(x

结对-英文词频分析-结对项目总结

结对成员: 学号: 2015035107109 学号: 2015035107059 结对编程技术是指两位程序员坐在同一工作台前开发软件.与两位程序员各自独立工作相比,结对编程能编写出质量更高的代码. 第一次尝试结对编程,让我有了很大的收获,自己跟着他人的思路去敲代码,在根据自己的经验,共同变成高质量代码让我受益匪浅, 学习他人思路,丰富了自己的思想,让他人口述流程,可以锻炼自己的思路,已经沟通能力,互利共赢.