用python结合jieba和wordcloud实现词云效果


Posted in Python onSeptember 05, 2017

0x00 前言

突然想做一个漏洞词云,看看哪些漏洞比较高频,如果某些厂商有漏洞公开(比如ly),也好针对性挖掘。就选x云吧(镜像站 http://wy.hxsec.com/bugs.php )。用jieba和wordcloud两个强大的第三方库,就可以轻松打造出x云漏洞词云。

github地址: https://github.com/theLSA/wooyun_wordcloud

本站下载地址:wooyun_wordcloud

0x01 爬取标题

直接上代码:

#coding:utf-8
#Author:LSA
#Description:wordcloud for wooyun
#Date:20170904

import urllib
import urllib2
import re
import threading
import Queue

q0 = Queue.Queue()

threads = 20

threadList = []

def gettitle():
 while not q0.empty():

 i = q0.get()
 url = 'http://wy.hxsec.com/bugs.php?page=' + str(i)
 html = urllib.urlopen(url).read()
 reg = re.compile(r'<li style="width:60%;height:25px;background-color:#FFFFFF;float:left" ><a href=".*?" rel="external nofollow" >(.*?)</a>')
 titleList = re.findall(reg,html)
 fwy = open("wooyunBugTitle.txt","a")
 for title in titleList:
 fwy.write(title+'\n')
 fwy.flush()
 fwy.close()
 print 'Page ' + str(i) + ' over!'

def main():
 for page in range(1,2962):
 q0.put(page)
 for thread in range(threads):
 t = threading.Thread(target=gettitle)
 t.start()
 threadList.append(t)
 for th in threadList:
 th.join()

 print '***********************All pages over!**********************'

if __name__ == '__main__':
 main()

0x02 打造词云

还是直接上代码:

# coding: utf-8

import jieba
from wordcloud import WordCloud
import matplotlib.pyplot as plt

data = open("wooyunBugTitle.txt","r").read()
cutData = jieba.cut(data, cut_all=True)
word = " ".join(cutData)

cloud = WordCloud(
 #设置字体,不指定可能会出现中文乱码
 font_path="msyh.ttf",
 #font_path=path.join(e,'xxx.ttc'),
 #设置背景色
 background_color='white',
 #词云形状
 #mask=color_mask,
 #允许最大词汇
 max_words=2000,
 #最大号字体
 max_font_size=40
 )

wc = cloud.generate(word)
wc.to_file("wooyunwordcloud.jpg") 
plt.imshow(wc)
plt.axis("off")
plt.show()

0x03 效果演示:

用python结合jieba和wordcloud实现词云效果

用python结合jieba和wordcloud实现词云效果

用python结合jieba和wordcloud实现词云效果

0x04 结语

由词云图可以看出,SQL注入依旧风光无限,其次是命令执行,继而是信息泄漏,整体看还是比较直观的。

Python 相关文章推荐
python版简单工厂模式
Oct 16 Python
Django自定义manage命令实例代码
Feb 11 Python
python DataFrame获取行数、列数、索引及第几行第几列的值方法
Apr 08 Python
python操作mysql代码总结
Jun 01 Python
JavaScript中的模拟事件和自定义事件实例分析
Jul 27 Python
python实现感知机线性分类模型示例代码
Jun 02 Python
Django框架之登录后自定义跳转页面的实现方法
Jul 18 Python
在Python中预先初始化列表内容和长度的实现
Nov 28 Python
Python编程快速上手——选择性拷贝操作案例分析
Feb 28 Python
python 算法题——快乐数的多种解法
May 27 Python
python中%格式表达式实例用法
Jun 18 Python
Python 装饰器(decorator)常用的创建方式及解析
Apr 24 Python
python基础_文件操作实现全文或单行替换的方法
Sep 04 #Python
python 生成器协程运算实例
Sep 04 #Python
python 文件操作删除某行的实例
Sep 04 #Python
Django数据库操作的实例(增删改查)
Sep 04 #Python
python中Matplotlib实现绘制3D图的示例代码
Sep 04 #Python
Python2实现的LED大数字显示效果示例
Sep 04 #Python
Python2随机数列生成器简单实例
Sep 04 #Python
You might like
如何在PHP中使用Oracle数据库(3)
2006/10/09 PHP
浅谈Laravel核心解读之Console内核
2018/12/02 PHP
初学JavaScript第二章
2008/09/30 Javascript
Javascript 验证上传图片大小[客户端]
2009/08/01 Javascript
关于 文本框默认值 的操作js代码
2012/01/12 Javascript
Jquery EasyUI中弹出确认对话框以及加载效果示例代码
2014/02/13 Javascript
JS实现带提示的星级评分效果完整实例
2015/10/30 Javascript
你所未知的3种Node.js代码优化方式
2016/02/25 Javascript
基于原生JS实现图片裁剪
2016/08/01 Javascript
jQuery实现简洁的轮播图效果实例
2016/09/07 Javascript
Vuejs入门教程之Vue生命周期,数据,手动挂载,指令,过滤器
2017/04/19 Javascript
Vue.js表单标签中的单选按钮、复选按钮和下拉列表的取值问题
2017/11/22 Javascript
JS中的算法与数据结构之链表(Linked-list)实例详解
2019/08/20 Javascript
Vue实现简易计算器
2020/02/25 Javascript
20招让你的Python飞起来!
2016/09/27 Python
PyQt 线程类 QThread使用详解
2017/07/16 Python
python中map的基本用法示例
2018/09/10 Python
对python中的控制条件、循环和跳出详解
2019/06/24 Python
python basemap 画出经纬度并标定的实例
2019/07/09 Python
python命令 -u参数用法解析
2019/10/24 Python
windows、linux下打包Python3程序详细方法
2020/03/17 Python
基于Python计算圆周率pi代码实例
2020/03/25 Python
Pandas中DataFrame基本函数整理(小结)
2020/07/20 Python
Python中三维坐标空间绘制的实现
2020/09/22 Python
英国最大的高品质珠宝和手表专家:Goldsmiths
2017/03/11 全球购物
某公司部分笔试题
2013/11/05 面试题
职工趣味运动会方案
2014/02/10 职场文书
小学母亲节活动方案
2014/03/14 职场文书
古汉语文学求职信范文
2014/03/16 职场文书
企业节能减排实施方案
2014/03/19 职场文书
函授毕业生自我鉴定范文
2014/03/25 职场文书
新年联欢会主持词
2014/03/27 职场文书
产品委托授权书范本
2014/09/16 职场文书
2014年党支部工作总结
2014/11/13 职场文书
婚庆答谢词大全
2015/09/29 职场文书
Winsows11性能如何? win11性能测评多核竟比Win10差了10%
2021/11/21 数码科技